类名
对象名 = new 类名();
类是对象的数据类型,对象是类的变量值
数据类型
变量名 = new 类名();
对象值:必须通过new关键字调用特殊的方法创建返回的地址
数据类型中:分基本数据类型和引用数据类型
引用数据类型:String 数组
自定义的对象
面向对象-封装:
封装:隐藏,简单说就是将属性和方法封装在类中
计算机中的类根据其使用的场合可以分为:
类 :封装了属性和方法的类
数据类:都是定义各种属性的类,该类的对象等同于一个特殊的变量,实际开发中该类型的类一般取名:实体类,持久类,JavaBean,po,pojo,entity
功能类:都是定义各种方法的类,实际开发中,该类型的类常见取名:dao,service,util
注意:哪怕属性很少,方法也不多,也不建议将属性和方法定义在一个类中,而是应该定义成两个以上的类(这两个以上至少包含一个数据类),方便后期维护和修改,除非你能保证该项目是一次性的
所以面向对象的封装其实主要是针对数据类进行二次封装:
普通的数据类其属性可以直接通过:对象名.属性名=值;直接赋值,这样就存在问题,这样无法保证属性的完整性**(数据值的不正确,不符合实际意义都表示不完整)**
封装步骤:
1.将所有属性都设置为private(也就是在所有属性之前添加该修饰符,可以让其他类无法访问)
2.给每个属性添加一对使用public修饰的getXxx和setXxx方法,用于获取属性值和设置属性值
总结:
封装的体现:
1.属性:使用private修饰,这就是变量封装
2.方法:封装了多行代码,这是方法的封装
3.类:封装了多个属性和多个方法,这也是封装
Private关键字:私有的
Ø 只能修饰成员变量和成员方法,被修饰的成员都只能在当前类访问
This关键字,表示本类对象的引用
-
this在方法中使用时,哪个对象调用了该方法,那么this就代码调用该方法的对象引用
-
this是在创建对象时this就存在的
-
this的作用:用于区分同名成员变量和局部变量(参数也是局部变量)
面向对象-继承
在java中,类的继承是指在一个现有类的基础上构建一个新的类,构建出的新的类就被称为子类,而现有类被称为父类,子类自动会具有父类所有非私有的属性和方法
补充说明:子类也称派生类 父类也称超类或基类
继承的使用:
如果想要让一个类继承另一个类,只需要使用extends关键字
语法:
public class 子类名 extends 父类名{
}
继承的好处:
-
继承可以提高代码重用性,提高开发效率
-
让类与类之间产生联系
使用继承需要注意的地方:
- Java中一个类只能有一个父类,也就是java只支持单继承
错误代码:Class C extends A,B{}//java中不允许同时继承多个类
- 多个类可以继承一个父类
class A{}
class B extends A{}
class C extends A{}
- java中可以多层继承,一个类的父类可以再去继承另外的父类
class A{}
class B extends A{}
class C extends B{}//类C继承了类B,那么类C是类B的子类,同时也是类A的子类
- 类和父类是一种相对概念,也就是说一个类有可能既是父类,也是子类
当出现子类存在和父类同名属性时,如果想要区分父类和子类的属性,可以通过super和this区分
Super.父类属性名