Private
数据不安全的情况:
年龄为负数,符合类型要求,但是不符合逻辑要求
为了解决安全问题:
介绍一个关键字 private 私有的
private 私有的:
只能在当前类中使用,外部类中无法使用
私有的属性配合一套公共的访问方式一起使用:
设置器 : 为私有的属性进行赋值 setter
获取器|访问器 : 获取私有属性的值 getter
面向对象的三大特性:
封装 继承 多态
封装的概念:
隐藏内部的实现细节,对外提供公共的访问方式
方法一个类中封装的一种体现
属性私有化就是封装的一个非常具体的体现
类也是封装的体现
问题; 私有是封装,封装是私有?
私有是封装
封装不仅仅是私有
javabean: 泛指一系列的类模板类
标准的javabean规范:
1)类是公共的
2)至少存在一个空构造
3)属性私有化
4)公共的访问方式 setter getter
public class JavaBean05 {
public static void main(String[] args) {
Person p = new Person();
//p.name = "二狗";
//p.age = -18;
p.setName("张三");
p.setAge(19);
System.out.println(p.getAge());
p.code();
}
}
class Person{
//姓名
private String name;
//年龄
private int age;
//构造器
public Person(){}
//设置器
public void setAge(int age){
if(age<=0 || age>=150){
System.out.println("年龄不合法!!!");
return;
}
this.age = age;
}
public void setName(String name){
this.name = name;
}
//访问器
public int getAge(){
return age;
}
public String getName(){
return this.name;
}
public Person(String name,int age){
this.name = name;
this.age = age;
}
//码农
public void code(){
System.out.println(age+"的"+name+"正在敲代码!!!!!");
}
}