本文主要是介绍第七周学习笔记DAY.2-封装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在一个类中需要使用非当前包里的类,需要进行导包操作
1)如果你使用的类是java.lang包里的类,不需要你手动导包,系统自动导包
2)要使用非java.lang包中的类,需要手动导包,导包使用import关键字
import xxx.xxx.xxx.类名;
3)导包语句写在包定义语句和类定义语句之间,一个Java文件中可能需要使用多个其他包中的类,就需要写多个import语句
4如果你需要导入某个包中大多数的类型,你可以使用*表示这个包中所有的类,注意,*不包含子文件夹中的类
5)如果一个类中同时使用了其它多个包中的同名类,那么需要使用类的完整路径名(包含类所在包的名称)来使用类
public class Penguin {//定义属性时,不再使用public修饰符,使用private进行修饰private String name;private int health;private int love;public Penguin() {}public Penguin(String name, int health, int love) {this.name = name;this.health = health;this.love = love;}public void show(){System.out.println("昵称:"+this.name+",健康值:"+this.health+",亲密度:"+this.love);}//因为name、health、love属性被private修饰了,这三个属性只能在本类中直接访问,外部程序不能直接访问这三个属性,需要提供公共的get/set方法public String getName() {return name;}public void setName(String name) {this.name = name;}public int getHealth() {return health;}public void setHealth(int health) {//在这里,对你传递过来的health值进行判断if(health<1 || health>100){System.out.println("健康值范围1~100,你赋予的值不合理,默认赋予一个值60");this.health =60;return;//如果你赋予的健康值不合理,默认赋值,然后结束后续操作}this.health = health;}public int getLove() {return love;}public void setLove(int love) {//在这里,对你传递过来的love值进行判断if(love<1 || love>100){System.out.println("亲密度值范围1~100,你赋予的值不合理,默认赋予一个值70");this.love =70;return;//如果你赋予的健康值不合理,默认赋值,然后结束后续操作}this.love = love;}public static void main(String[] args) {Penguin penguin1 = new Penguin();penguin1.name = "QQ";penguin1.health = 90;penguin1.love = 99;penguin1.show();}
}
public class PenguinTest {public static void main(String[] args) {//使用无参构造方法创建对象Penguin penguin1 = new Penguin();//给属性赋值//在Penguin类中对name、health、love使用private修饰了,在外部程序中不能直接访问,只能通过Penguin类中公共的get/set方法访问操作
// penguin1.name = "QQ";
// penguin1.health = 90;
// penguin1.love = 99;penguin1.setName("QQ");penguin1.setHealth(99);penguin1.setLove(100);System.out.println("昵称:"+penguin1.getName()+",健康值:"+penguin1.getHealth()+",亲密度:"+penguin1.getLove());penguin1.show();System.out.println("--------------------------------------");Penguin penguin2 = new Penguin();penguin2.setName("Q仔");penguin2.setHealth(-90);penguin2.setLove(-100);System.out.println("昵称:"+penguin2.getName()+",健康值:"+penguin2.getHealth()+",亲密度:"+penguin2.getLove());penguin2.show();}
}
1)类的修饰符有public和默认修饰符
2)public修饰符是公有访问级别,在任何位置都可以直接访问
3)默认修饰符是包级私有,被默认修饰符修饰的类,只能被同一个包中的类访问
JVM加载类时,加载静态代码块
如果有多个静态块,按顺序加载
每个静态代码块只会被执行一次
static代码块可以用来设置相关配置信息,例如数据库的相关信息,还可以用来初始化数据
经过上述一些列的操作得到:
静态方法中只能访问静态变量和静态方法
非静态方法中可以访问非静态变量和非静态方法,也可以访问静态变量和静态方法
总结:静态的只能访问静态,非静态可以访问所有的
这篇关于第七周学习笔记DAY.2-封装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!