今天的时间多一些,所以好好排一下版吧!嘻嘻嘻
面向对象思想是基于面向过程思想演变而来的。
类和对象:
类是对象现实生活中具有共同属性和行为事物的抽象
【类】 是对事物,也就是对对象的一种描述,根据类去创建对象
类的组成(类的组成是由属性和行为组成的)
属性:在代码中通过成员变量来体现(类中方法外的变量)该事物的各种特征!
例:it张的属性:姓名、年龄、毕业院校
行为:在代码中通过成员方法来体现(和之前定义方法的格式一样,只不过是
去掉了static关键字),该事物存在的功能(能够做的事情)
例:it张的行为:学习,Java编程开发
类和对象的关系:
类:类是现实生活中一类具有共同属性和行为事物的抽象。
对象:是能够看见摸得着的实体
类是对象的描述,对象是类的实体
对象的创建及使用:
创建格式:类名 对象名 = new 类名(); Student stu = new Student();
成员变量的使用方法:对象名.变量名 stu.变量名
成员方法的使用方法:对象名.方法名() stu.方法名();
成员方法跟普通的方法定义一样,也是可以带有形参
Student stu = new Student(); //这个new是根据字节码文件(.Class)new出来的(类),所以字节码中有的成员变量和成员方法这个stu都会拥有一份并且有new就会进堆内存,成员方法不会进入堆内存,但它会在堆内存中有一块地址,后面我们可以通过这个地址找到成员方法在进行调用
垃圾内存:在堆内存中,对象或数组产生的地址,通过任何方式都不能找到后,就会被判定为“垃圾”,垃圾会被Java垃圾回收器,空闲的时候自动清理
private关键字:
private是一个权限修饰符
可以修饰成员(变量、方法)
被private修饰的成员只能在本类中进行访问
针对private修饰的成员变量,如果需要被其他的类使用,则需要提供相应的操作方法:
提供"getXXX()"方法,用于获取成员变量的值,方法使用public修饰
提供"setXXX变量名(参数)"用于设置成员变量的值,方法用public修饰
当成员变量于局部变量重名的时候,Java会自动使用就近原则
当我们想要把一个变量标记为成员变量,只需要在变量名前加入this.就可以了。
return 成员变量(系统会默认帮我们加入一个this.的形式)也就是return this.成员变量。
我们调用成员变量的时候最好是加上this.的方式
this关键字的作用:可以调用本类的成员(变量、方法)解决局部变量和成员变量重名的问题。
this关键字:
this:代表所在类的对象引用(也就是所在对象类的内存地址)
方法被那个对象调用,this就代表那个对象
概述 : this修饰的变量用于指代成员变量,其主要作用是
(区分局部变量和成员变量的重名问题)
方法的形参如果与成员变量同名,
不带this修饰的变量指的是形参,而不是成员变量
方法的形参没有与成员变量同名,不带this修饰的变量指的是成员变量
面向对象的三大特征(封装、继承、多态):
私有仅仅是封装的一种体现
封装是一种思想
封装的好处:
1、提高了代码的安全性
2、提高了代码的复用性
构造方法:构造对象的时候,所调用的方法
格式:
1、方法名与类名相同,大小写也要一致
2、没有返回值类型(连void都没有)
3、没有具体的返回值(不能由return带回数据结果)
public Student(){
System.out.println("我是student的构造方法")
}
此时在测试类TestStudent中创建学生类的空参构造方法
Student stu = new Student();
此时打印的结果就为我是student的构造方法
执行时机:
1、创建对象的时候调用,每创建一次对象,就会执行一次构造方法
2、只能手动调用构造方法
构造方法的作用:
用于给对象的数据(属性)初始化
构造方法的注意事项:
1、构造方法的创建
如果没有定义构造方法,系统将会给一个默认的无参构造方法
如果定义了构参方法,系统便不会在提供默认的无参构造方法
2、构造方法的重载:
如果自定义了带参数的构造方法,还要使用无参数的构造方法,
就必须在写一个无参构造方法
3、推荐的使用方式:
无论是否使用,都手动书写无参构造方法和带参数的构造方法。
JavaBean类:是用于专门封装数据的类
Java萌新原创,一些皮毛知识,如有不对之处,还望各位前辈多多指教!