Java语言面向对象编程思想之类与对象实例详解
在初学者学java的时候,面向对象很难让人搞懂,那么今天小编就来为大家把这个思想来为大家用极为简单的方法理解吧。
首先我们来简单的阐述面向对象的思想。
面向对象:
官方的语言很抽象,我们把官方的解释和定义抛开。想想,自己有什么,对!!我们自己有手脚眼口鼻等一系列的器官。来把自己所具有的器官就可以看作我们的属性,自己是不是可以喜怒哀乐和嬉笑怒骂,这些是不是我们的行为,那么自己的具有的属性加自己有的行为就称为一个对象。
注意!!我们自己,一个个体是一个对象,因为,你是你,我是我,我们虽然有相同的,但是我们不一样,比如你比我高,我比你头发长。
接下来在进一步。我和你都是人,因为我和你有相似的东西,所以我和你都属于人类。人类,就是人的总称,也是相似对象的一种抽象。
从上面看:我和你只是人类的两个特列,但是外星人也可以用人类来称呼我们,看的出来:类的具体表现或者实例就是对象,而对象的抽象或者总概括就是类。
小编说的这么简单,没有用例子说话怎么行,下面我们进入用java代码来反应情况。
下面我们来写出一个人的类,注意:对象是由类而来,类先有,对象后有,是类实例化才有。
原文代码不太合适,小编修改后如下:
public class person { string name; int age; string gender; public person() { } person(string name,int age,string gender){ this.name = name; this.age = age; this.gender = gender; system.out.println(this.name+"对象被创建了"+",有"+this.age+"岁"+",是"+this.gender+"的"); } public static void main(string[] args) { person p1 = new person("张三", 18, "男"); person p2 = new person("李四", 19, "女"); } }
运行结果:
张三对象被创建了,有18岁,是男的 李四对象被创建了,有19岁,是女的
以上就是对面向对象的理解。
类:
上面小编已经说到类是属性加行为,上面的代码就已经说明了属性了
为了更好的说明行为,我们就加入java中类的行为————方法
package objectandclass; import java.awt.secondaryloop; public class person { string name; int age; string gender; public person() { } person(string name,int age,string gender){ this.name = name; this.age = age; this.gender = gender; system.out.println(this.name+"对象被创建了"+",有"+this.age+"岁"+",是"+this.gender+"的"); } public void say(){ system.out.println("我说我叫"+this.name+",别以为我不会说话,我会说很多话。"); } }
类有了方法之后,对象也能调用这个方法,我们称,此时对象具有了类的一些行为体现。
public static void main(string[] args) { person p1 = new person("张三", 18, "男"); p1.say(); person p2 = new person("李四", 19, "女"); p2.say(); }
显而易见:运行的结果肯定为:
张三对象被创建了,有18岁,是男的 我说我叫张三,别以为我不会说话,我会说很多话。 李四对象被创建了,有19岁,是女的 我说我叫李四,别以为我不会说话,我会说很多话。
下面我们说一说关于类的一些特征 :
类,他有自己的东西,也有给对象的东西。类的东西就是类的成员
类的成员一般有初始化块,构造器,属性,方法,内部类,枚举类。
如果是属于类的东西(直接可以用类名.成员调用。)则用static调用。
其实类的东西对象都能用,无论是不是静态的,但是不用static修饰 的,就是对象的东西,只能由实例化的对象来调用。
关于对象就不用说了,大家记两点就行,要创建对象,必须调用构造器。
初始化块可以看作是特殊的构造器,无参数传入,创建对象时,反正会被调用。
总结
以上就是本文关于java语言面向对象编程思想之类与对象实例详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以参阅:java编程思想对象的容纳实例详解 、 关于java企业级项目开发思想等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对网站的支持!
上一篇: Python类的动态修改的实例方法
下一篇: Java本地缓存的实现代码