面向对象的三大特性:封装、继承、多态。
1.什么是封装:
将类的某些信息隐藏在类的内部,不允许外部程序直接调用或修改;需通过该类提供的方法来实现对隐藏信息的操作和访问。
//隐藏属性,通过方法调用/修改属性;
2.封装有什么好处?
- 只能通过规定的方法访问数据;
- 隐藏类的实例细节,方便修改和调用;
3.封装的实现步骤:
- 修改属性的可见性,将类型修改为private;
- 创建getter(调用)/setter(赋值)方法;
- 在getter/setter方法中加入属性控制语句,对属性值的合法性进行判断;
eg:
package com.imooc;
puclic class Telephone{
private float screen;
private float cpu;
private float mem;
public float getScreen(){
return screen;
}
public void setScreen(float newScreen){
screen=newScreen;
}
public Telephone(){
System.out.println("无参数的构造方法执行了!");
}
public Telephone(float newScreen,float newCpu,float newMem){
screen=newScreen;
cpu=newCpu;
mem=newMem;
System.out.println("有参数的构造方法执行了!");
}
}
-----------------------------
package com.imooc;
puclic class UseTelephone{
public class void main(String() args){
Telephone phone=new Telephone();
Telephone phone2=new Telephone(5.0f,1.4f,2.0f);
phone2.setScreen(6.0f);
System.out.println("screen:"+phone.getScreen());
}
}