day_04
--暑假第四天学习--
一.匿名对象
匿名对象:没有引用类型变量指向的对象称作为匿名对象。
匿名对象要注意的事项:
1. 我们一般不会给匿名对象赋予属性值,因为永远无法获取到。
2. 两个匿名对象永远都不可能是同一个对象。
匿名对象好处:简化书写。
匿名对象的应用场景:
1. 如果一个对象需要调用一个方法一次的时候,而调用完这个方法之后,该对象就不再使用了,这时候可以使用
匿名对象。
2. 可以作为实参调用一个函数。
eg:
//学生类 class Student{ int num; //学号 String name; //名字 public void study(){ System.out.println("好好学习,为将来成为高帅富做准备!"); } } class Demo1{ public static void main(String[] args) { new Student().study(); } }
二.面向对象三大特征
1. 封装
2. 继承
3 多态
封装
权限修饰符:权限修饰符就是控制变量可见范围的。
public : 公共的。 public修饰的成员变量或者方法任何人都可以直接访问。
private : 私有的, private修饰的成员变量或者方法只能在本类中进行直接访问。
封装的步骤:
1. 使用private修饰需要被封装的属性。
2. 提供一个公共的方法设置或者获取该私有的成员属性。
命名规范:
set属性名();
get属性名();
疑问: 封装一定要提供get或者set方法吗?
不一定, 根据需求而定的。
不一定, 根据需求而定的。
规范 : 在现实开发中一般实体类的所有成员属性(成员变量)都要封装起来。
实体类:实体类就是用于描述一类 事物的就称作为实体类。
封装的好处:
1. 提高数据的安全性。
2. 操作简单。
3. 隐藏了实现。
1. 提高数据的安全性。
2. 操作简单。
3. 隐藏了实现。
eg:
class Member{ public String name; //名字 private String sex; //性别 public int salary; //薪水 //定义一个公共的方法设置sex属性 public void setSex(String s){ if (s.equals("男")||s.equals("女")){ //注意: 如果比较两个字符串的内容是否一致,不要使用==比较, 使用equals方法。 sex = s; }else{ //默认是男 sex = "男"; } } //定义一个公共的方法获取sex属性 public String getSex(){ return sex; } //聊天 public void talk(){ System.out.println(name+"聊得非常开心"); } } class Demo{ public static void main(String[] args) { Member m = new Member(); m.name="狗娃"; m.setSex("女"); m.salary = 800; System.out.println("姓名:"+ m.name+" 性别:"+ m.getSex()+" 薪水:"+ m.salary); } }