day06-面向对象的成员变量与局部变量的区别
This commit is contained in:
@@ -1,5 +1,29 @@
|
|||||||
package com.inmind.object_test02;
|
package com.inmind.object_test02;
|
||||||
|
/*
|
||||||
|
成员变量:处于成员位置的变量
|
||||||
|
成员位置:类中方法外
|
||||||
|
局部变量:在方法中定义的变量
|
||||||
|
|
||||||
|
注意:在方法中,如果使用了成员变量与局部变量同名的变量,符合就近原则,直接使用的是局部变量
|
||||||
|
|
||||||
|
成员变量与局部变量的区别:
|
||||||
|
1.定义的位置不同
|
||||||
|
成员变量:类中方法外
|
||||||
|
局部变量:方法中
|
||||||
|
2.作用范围不同
|
||||||
|
成员变量:整个类中都能用
|
||||||
|
局部变量:只能在定义该变量的方法中
|
||||||
|
3.处于内存的位置不同
|
||||||
|
成员变量:在堆内存中
|
||||||
|
局部变量:在栈内存
|
||||||
|
4.默认值不同:
|
||||||
|
成员变量:有默认值的
|
||||||
|
局部变量:没有默认值
|
||||||
|
5.生命周期不同
|
||||||
|
成员变量:随着对象的出现而出现,随着对象的销毁而销毁
|
||||||
|
局部变量:随着方法的出现而出现,随着方法的销毁而销毁
|
||||||
|
|
||||||
|
*/
|
||||||
public class Phone {
|
public class Phone {
|
||||||
//品牌
|
//品牌
|
||||||
String brand;
|
String brand;
|
||||||
@@ -10,6 +34,16 @@ public class Phone {
|
|||||||
//尺寸
|
//尺寸
|
||||||
double size;
|
double size;
|
||||||
|
|
||||||
|
|
||||||
|
//show:展示自身(属性)
|
||||||
|
public void show() {
|
||||||
|
String brand1 = "某品牌";//局部变量,只能在定义该变量的方法中使用
|
||||||
|
System.out.println(brand);
|
||||||
|
System.out.println(price);
|
||||||
|
System.out.println(color);
|
||||||
|
System.out.println(size);
|
||||||
|
}
|
||||||
|
|
||||||
//打电话
|
//打电话
|
||||||
public void call(String number) {
|
public void call(String number) {
|
||||||
System.out.println("给"+number+"打电话");
|
System.out.println("给"+number+"打电话");
|
||||||
|
|||||||
@@ -8,33 +8,25 @@ public class Test01 {
|
|||||||
p1.price = 12999.9;
|
p1.price = 12999.9;
|
||||||
p1.color = "土豪金";
|
p1.color = "土豪金";
|
||||||
p1.size = 6.4;
|
p1.size = 6.4;
|
||||||
showPhone(p1);
|
p1.show();
|
||||||
|
// showPhone(p1);
|
||||||
/*System.out.println(p1.brand);
|
|
||||||
System.out.println(p1.price);
|
|
||||||
System.out.println(p1.color);
|
|
||||||
System.out.println(p1.size);*/
|
|
||||||
//买一个星空灰的华为折叠屏
|
//买一个星空灰的华为折叠屏
|
||||||
Phone p2 = new Phone();
|
Phone p2 = new Phone();
|
||||||
p2.brand = "华为";
|
p2.brand = "华为";
|
||||||
p2.price = 22999.9;
|
p2.price = 22999.9;
|
||||||
p2.color = "星空灰";
|
p2.color = "星空灰";
|
||||||
p2.size = 12.4;
|
p2.size = 12.4;
|
||||||
showPhone(p2);
|
// showPhone(p2);
|
||||||
|
p2.show();
|
||||||
/*System.out.println(p2.brand);
|
|
||||||
System.out.println(p2.price);
|
|
||||||
System.out.println(p2.color);
|
|
||||||
System.out.println(p2.size);*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//使用类作为参数
|
//使用类作为参数
|
||||||
//定义接收一个手机,将手机的属性打印的方法
|
//定义接收一个手机,将手机的属性打印的方法
|
||||||
public static void showPhone(Phone p){
|
/*public static void showPhone(Phone p){
|
||||||
System.out.println(p.brand);
|
System.out.println(p.brand);
|
||||||
System.out.println(p.price);
|
System.out.println(p.price);
|
||||||
System.out.println(p.color);
|
System.out.println(p.color);
|
||||||
System.out.println(p.size);
|
System.out.println(p.size);
|
||||||
}
|
}*/
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user