`
huangfeiNetJava
  • 浏览: 39567 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

类与对象

 
阅读更多

      类和对象之间微妙的关系,其实是来自于实际生活中(类和对象的概念当然是java鼻祖根据经验搞出来的,而经验不久是从生活中来吗?),所以,你自己能在生活中找到活生生的例子。

      类是抽象的,规定了其对象的所有属性和方法,就像你说“树”,你心中有树的概念了吧,你知道树是什么样子的(有枝干,有叶子,甚至有花),但是你可能会这样想:树也分好多种啊,木棉、梧桐或者说香蕉树……。这个没错,你想得又远一点了,这就涉及类的继承了。这其中“树”就是我们所说的“父类”,木棉、梧桐或香蕉树都是“树”的“子类”,子类继承了父类的所有属性和方法,就像你爸妈的基因遗传给你一样,只是你的基因的表达不同(这些生物常识,你懂的)。

      关于对象,请记住“万事万物皆对象”这句名言吧!对象是从类中来的,对象具有类的属性,并且对象是“极其具体的

”,什么是“极其具体的”?这个问题问得好,我们还用树的例子,假如我对你说“树”,你知道树的具体位置,具体属性和方法吗?不知道是吧。那假如我说“你家后院水井旁的那棵树”(也许你家没有水井,但别钻牛角尖啦),你知道“那棵树”了吧,你甚至能对我说出它的名字,有多高,有多茂盛,现在有没有结出你最爱吃的果子……对象就是这样的一个东西,对象能让你想到很具体的东西,而不是一个空洞的概念。

      现在应该对这两个概念有些眉头了吧,不需要你变成哲学家去看透事物的本质,以上例子用常识就能理解。

      下面是类和对象的创建,很简单:

    

       类的创建:public   类名  { 属性,方法 }

  

       对象的创建: 类名 对象名 = new 类名();    (此处根据构造器创建)

 

简单例子演示:

//定义一个学生类
public class Student {

	//定义一个姓名属性,默认值是null
	private String name;
	//定义一个学分属性,默认值是0.0
	private double score;
	
	//定义设置姓名属性值的方法
	public void setName(String strName){
		//将strName的值赋给name
		name = strName;
	}
	//定义获取姓名属性值的方法
	public String getName(){
		return name;
	}
	
	//定义一个学习的方法
	public void study(){
		//学习的时候学分加1
		score++;
		//输出结果
		System.out.println(name+"学习中,学分是"+score);
	}

}

 

1
4
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics