面向对象编程03
小结
-
类与对象 类是一个模板,对象是一个具体的实例
-
方法 定义、调用
-
对应的引用 引用类型: 基本类型(8)byte short int long boolean char float double 对象是通过引用来操作的:栈----》堆
-
属性:字段Field 成员变量 默认初始化: 数字: 0/0.0 char: u0000 boolean: false 引用: null
修饰符 属性类型 属性名 = 属性值!
-
对象的创建和使用
-
必须使用new关键字创造对象,构造器 Person yueming = new person()
-
对象的属性 yueming.name
-
对象的方法 yueming.sleep()
-
-
类: 静态的属性 属性 动态的行为 方法
面向对象编程重制版
面向对象编程01
-
对于描述复杂的事物,为了从宏观上把握、从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。
但是,具体到微观操作,仍然需要面向过程的思路来处理。
-
本质就是以类的方式组织代码,以对象的组织(封装)数据。
-
面向对象编程(Object-Oriented Programming= OOP)
-
break:跳出switch,结束整个循环
-
return:结束方法,返回一个结果
-
代表方法结束,return语句后面的代码都无法实现的
-
return的返回值也需要和方法的类型相同
-
方法名
-
注意规范,按照驼峰原则命名。
-
要做到见名知意,方便自己也方便别人阅读。
-
值传递与引用传递的区别
-
传递的内容不一样。值传递传递的是内容,引用传递传递的是地址
-
方法的作用范围不同。值传递不会修改方法外部的值,引用传递会
补充
-
这里的方法的a并非main方法中的a,同时形参不会改变实参
package com.oop.demo01; //值传递 public class Demo04 { public static void main(String[] args) { int a = 1; System.out.println(a);//1 Demo04.change(a);//1 System.out.println(a);//1 }//方法内的a与上面定义的a是两个不同的数据,方法内的a的值只在方法内有效,等方法运行结束就会重新变成上面定义的值 //实参可以改变形参,但是形参改变不了实参 //返回值为空 public static void change(int a){ a = 10; } }
-
下面的Person方法已经在main方法中实例化为对象了,因此当通过一个方法改变这个对象时便可以实现Person的改变。
-
与上面a方法不同在于,Demo04的俩个a并不是同一个,而Demo05的Person作为对象的操作便能实现。
package com.oop.demo01; //引用传递的是对象,本质还是值传递 //不知道对象的意思,不知道内存的定义 public class Demo05 { public static void main(String[] args) { Person person = new Person(); System.out.println(person.name);//null Demo05.change(person); System.out.println(person.name); } public static void change(Person person){ //person是一个对象:指向的----》Person person = new Person();这是一个具体的人, 可以改变属性! person.name = "Ym"; } } //定义了一个Person类,有一个属性:name class Person{ String name;//默认值为null
2022.10.8 星期六
哈哈好久没有写博客了,简单回顾一下过去俩个星期
首先第一个星期没有写是因为我在考科目二,本来应该在6.9过的科目二却挂了,好失望哈哈哈,然后上个星期用了一个星期的星期去大学城学科目二,还好最后都过了!现在也拿到证了,能够开车车咯。
第二个星期就是国庆啦,去了惠州过国庆又是一步都没有离开家的生活啧啧,虽然说吃好喝好看好电视哈哈哈很享受,但是还有有点无聊的,下次见到爸妈和女朋友就是在月底我姐姐结婚咯,时间慢点慢点。
最后总结一下今天,将方法回顾了一下,算是搞懂了之前没有搞懂的,感觉清晰了不少,明天继续回顾一下,不过现在的学习状态可太差了,明天一定一定要好好学习啊!
晚上要去健身了哈哈,体重一直没怎么变,还需要加油呀