day07作业.
2018-07-19 19:24 好好学习哟 阅读(235) 评论(0) 编辑 收藏 举报一.面向对象
1:局部变量和成员变量的区别?
a:局部变量在方法上或者中 声明,成员变量在类中方法外声明
b:局部变量存在栈中,成员变量在堆中
c:局部变量是没有默认初始化值使用前必须声明赋值,成员变量由默认初始化值
d:局部变量随着方法调用存在,随着方法的消失而消失。成员变量随着对象创建而存在,随着对象消失而消失。
2:匿名对象是什么?应用场景是什么?
匿名对象是没有名字的对象
应用场景仅仅只调用一次的时候。可以节省代码
3:封装是什么?java中封装的体现有哪些?请举例说明。
是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
private。
class studentTest {
public static void main(String[] args) {
myStudent s1 = new myStudent();
s1.name = "大狗";
s1.setAge(11);
s1.gender = "男";
s1.speak();
}
}
class myStudent {
String name;
private int age;
String gender;
public void setAge(int a){
if (a > 0 && a < 200) {
age = a;
}else
System.out.println("你可以回火星了");
}
public int getAge(int a){
return age;
}
public void speak() {
System.out.println(name + " " + age + " " + gender);
}
}
4:this关键字是什么?this关键字的应用场景?
5:如何使用一个类的成员
对象名.成员变量
对象名.成员方法(...)
========================================================
========================================================
二. 内存图
画图操作:
1.一个对象的内存图
2.两个对象的内存图
3.三个引用两个对象的内存图
========================================================
========================================================
三. 自定义类
Student 类
class studentTest {
public static void main(String[] args) {
myStudent s1 = new myStudent();
s1.name = "大狗";
s1.age = 11;
s1.gender = "男";
s1.speak();
}
}
class myStudent {
String name;
int age;
String gender;
public void speak() {
System.out.println(name + " " + age + " " + gender);
}
}
Phone 类
class phoneTest {
public static void main(String[] args) {
myPhone p = new myPhone();
p.brand = "小米";
p.price = 2499;
p.info() ;
p.call();
p.messenge();
p.play();
}
}
class myPhone {
String brand;
int price;
public void info(){
System.out.println(brand + " " + price);
}
public void call() {
System.out.println("打电话 ");
}
public void messenge() {
System.out.println("发短信");
}
public void play() {
System.out.println("打游戏");
}
}
Car 类
class carTest {
public static void main(String[] args) {
carT c = new carT();
c.color = "blue";
c.num = 5;
c.run();
}
}
class carT {
String color;
int num;
public void run(){
System.out.println(color + " " + num);
}
}