面向对象
2019-02-25 16:12:06来源:博客园 阅读 ()
面向对象的三大特征:封装性,继承性,多态性。
二者之间进行比较:
面向过程:实现某种功能时,看重每个步骤是怎么做的,整体的过程是怎样的,每个步骤都是自己亲力亲为。
面向对象:实现某种功能时,不看重具体的过程和步骤,而是看重谁能帮我做这些事情。
类与对象的关系:
类里面有属性,有行为。
属性:事务的特征信息,是什么
行为:事物的动作行动方案,能做什么。
面向对象的语言中,类就是用来模拟现实事物的,而对象是类的具体实例。
eg:1.类:抽象的,手机设计图纸。
2.对象:具体的,是一个真正的手机实例。
类的定义:
类是用来模拟现实事物的代码手段,事物分成属性,行为两个部分,类中也对应的包含两个部分。
1.成员变量(属性):将变量位置直接定义在类中,在方法外,即为成员变量。
2.成员方法(行为):将普通方法去掉static关键字,即为成员方法。
根据类创建对象:
类名称 对象名 = new 类名称();
类似于:数据类型 变量名称 = new 数据类型();
如何使用创建好的对象?
类中已经定义好了两个组成部分,成员变量,成员方法所以根据类创建出来的对象也有两个部分。
如何使用对象当中的成员变量?
对象名.成员变量名
note:想用谁就点谁。
如何使用定义好的类?
类就是一种引用数据类型,使用起来分成三个步骤:
1.导包:如果需要使用的目标类,和当前类(含有main方法)位于同一个包下的,那么可以省略导包不写,否则需要使用import语句
2.创建:类名称 对象名 = new 类名称();
3.使用。
对比一下局部变量和成员变量的不同:
1,定义的位置不同:
局部变量:定义在方法内。
成员变量:直接定义在类中,在方法的外面。
2.内存中位置不同:
局部变量:在栈内存中,Stack
成员变量:在堆内存中,Heap
3.生命周期不同:
局部变量:随着方法的进栈而出现,随着方法的出栈而消失。
成员变量:随着对象被创建而出现,随着对象被jvm回收而消失。
4.默认值不同:
局部变量:没有默认值,必须赋值之后才能使用。
成员变量:如果没有赋值,那么将会有一个默认值。
当局部变量和成员变量重名时,方法中会根据就近原则使用局部变量但是可以使用this来区分:
格式:this.成员变量名;作用:将局部变量和成员变量区分开来
note:this关键字其实代表的是当前对象,通过谁调用的方法谁就是this。
eg:
private关键字:
私有成员private一旦被使用修饰成员,那么超出了本类范围之外,就不能直接访问了(在无法控制成员变量取值范围,数据不安全时使用)。
如果需要使用private修饰的成员变量,可以间接访问,使用private要写一对setter和getter,(如果是Boolean类型getxxx必须写成isXXx形式)
构造方法:专门用来创建对象的方法,通过new关键字创建对象就是在调用构造方法。
1,构造方法不能写返回值类型连void都不能写。
2,构造方法的名称必须与所在类的名称完全一样,大小写也要一样。
3,构造方法也是可以重载的。重载好处:{1:定义一个无参数的构造方法,可以直接new对象;2:定义一个重载的全参数的构造方法,可以在new对象的同时方便对成员变量进行赋值}
4,构造方法如果没有定义,默认送一个;如果定义了,那么默认的不在赠送。
如何定义一个标准的类(POJO类)?
1)所有的成员变量都需要使用private关键字私有化。
2)为每一个成员变量编写一对儿Getter和Setter方法(可以用eclipse自带的添加在source里面)。
3)编写一个无参数的构造方法。
4)编写一个全参数的构造方法。
原文链接:https://www.cnblogs.com/rxing/p/10425600.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 通过与C++程序对比,彻底搞清楚JAVA的对象拷贝 2020-06-11
- Java笔记:集合 2020-06-10
- Java基础复习——类和对象 2020-06-09
- JSP九大内置对象 2020-06-07
- java对象指向问题 2020-06-07
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash