1 什么是面向对象
就是程序套路,拿东西过来做对应的事。
简单来说,如果你要和异地女友聊天 我们就需要手机来完成这件事。
2 类和对象
类 是描述一类事物
对象 是这类事物在代码中的具体体现
这是一个手机类
public class phone { // 属性 String band; int price; //行为 public void call(){ System.out.println("手机在打电话"); } public void game(){ System.out.println("手机在打游戏"); } }
这是对象用手机类在代码世界中的具体体现
public class phonetext { public static void main(String[] args) { // 创建手机的对象 phone p = new phone(); // 给手机赋值 p.band="华为"; p.price=1000; System.out.println(p.band); System.out.println(p.price); // 调用手机中方法 p.call(); p.game(); } }
3 面向对象的三大特征之一 封装
1)对象代表什么,就应该封装对应的数据,并提供数据对应的行为。
2)private
是一个权限修饰符
可以修饰成员(成员变量和成员方法)
只能在本类中被访问
在其他类中被访问要用独特的方法 setxx getxx 用public修饰
3)全局变量和局部变量
就近原则 谁离的近用谁。如果方法中非要用全局变量 用 this.xx
手机类
public class phone {
// 属性
private String band;
private int price;
public void setBand(String band){
// this用的是成员的值
this.band = band;
}
public String getBand(){
return band;
}
public void setPrice(int price){
if (price>1000&&price<4000){
this.price = price;
}else{
System.out.println("买不起别看了");
}
}
public int getPrice(){
return price;
}
//行为
public void call(){
System.out.println("手机在打电话");
}
public void game(){
System.out.println("手机在打游戏");
}
}
主类调用
public class phonetext { public static void main(String[] args) { // 创建手机的对象 phone p = new phone(); // 给手机赋值 p.setBand("华为"); String band=p.getBand(); p.setPrice(80000); int price= p.getPrice(); System.out.println(p.getBand()); System.out.println(p.getPrice()); // 调用手机中方法 p.call(); p.game(); } }
4)构造方法
工作建议 :无参的构造方法和有参的构造方法都要写
5)快捷生成JavaBean
快捷键:alt+insert
在idea里面安装PTG插件 快速生成JavaBean
6)this 的内存分配
this本质是:调用方法调用者的地址值
7)成员变量和局部变量区别
2 继承
3 多态