一、今日重点
- 创建对象
- 数据类型
- 定义成员方法
- 方法的重载
- 构造器
二、进程概况
【√代表掌握了,-代表产生困惑但已解决,×代表没解决】
- 面向过程和面向对象【√】
- 创建对象【√】
- 调用对象【√】
- 调用方法【√】
- 有返回值的方法【√】
- 方法的调用规则【√】
- 标识符的命名规则【√】
- 访问权限修饰符【√】
- 方法的重载【√】
- 构造器【√】
三、今日知识
- Java是一门面向对象的编程语言。在java中,万事万物皆对象(在Linux中,万事万物皆文件)
- 面向过程
面向过程就是分析出实现需求需要的步骤,通过一些方法一步一步实现。
- 面向对象(行为化)
把整个需求的按照特点、功能划分,将这些存在共性的部分封装成类(类实例化之后才是对象),让对象去解决问题。
- 面向对象更高级的抽象,是对现实世界的映射。
- 在Java中,面向对象有3大特征
- 封装
- 继承
- 多态
- 抽象
- 封装
代码层面
思想层面
- 如果把变量直接声明在类里:成员变量(功能等于全局变量)
- 如果把变量声明在某个方法里:局部变量
- 成员变量->属性
String brand; String color; long length;
- 定义一个成员方法
public:访问权限修饰符,后面讲
void:没有返回值
run():方法名,标识符
{}:方法体。这个方法要干什么
():传参数
public void run(int gasoline,String tire){ if(gasoline == 92){ System.out.println("92号汽油跑的很快!"); return; }else if(gasoline == 95){ System.out.println("95号汽油跑的更猛"); }else { System.out.println("你加了假油吧?"); } System.out.println(brand + "在漂移!"); }
- 标识符的命名规则
字母,数字,下划线,美元符号,数字不能开头
1、类名:大驼峰
2、属性名、方法名:小驼峰
- 调用对象
Car car1 = new Car(); // 对象.属性名 car1.brand = "大众"; car1.color = "黑色"; car1.length = 6L;
- 调用方法
car1.run(95,"锦湖轮胎");
- 参数可以有多个,中间用逗号隔开
- Java中的传参,需要明确数据类型
- 在声明方法时,括号里的参数,形式参数,形参,可以当做局部变量使用
- 在调用方法时,真正传入方法的参数,实际参数,实参。
- 有返回值的方法
public
boolean:返回值类型。我这个方法经过一系列的运行过后,要得到一个具体的值
这个值,返回值,返回值的类型是boolean
- 返回值用return xxx;类型要匹配
- return关键字
1.return关键字终止方法继续执行。
2.返回方法的返回值public boolean run(int gasoline){ if(gasoline == 92){ System.out.println("92号汽油跑的很快!"); return true; }else if(gasoline == 95){ System.out.println("95号汽油跑的更猛"); return true; }else { System.out.println("你加了假油吧?"); return false; } }
- 在一个方法中调用其他方法
public class Ch05 { String str; public void show(){ System.out.println(str); info(); } public void info(){ // 省略一部分要执行的代码... } }
- 访问权限修饰符
public:公有的,公共的。最大,只要是public声明的方法,只要在同一个工程中,都能用。
protected:受保护的
默认的:友好的
private:私有的,最小。只有在当前类可以用。
- 成员方法
1.方法名不能重复
·如果一个方法有static,要调用一个非static的方法,就只能创建对象,使用对象.方法的形式调用
Ch01 c = new Ch01( ) ;
c.run( );
·自己调自己:递归
·递归的问题:StackOverflowError 栈溢出(内存溢出)
在开发中到底要不要用递归?如果用的话,要注意什么?
斐波那契数列
- 方法的重载
- 要求和特点:
1.方法名相同
2.参数不同才能构成方法的重载
(1)参数的类型不同
(2)参数的个数不同
(3)参数的顺序不同
与返回值类型无关;与访问权限修饰符无关;与方法体无关。方法的重载只跟参数有关
3.方法的重载一定是发生在同一个类里
- 方法的重载的好处
为了把功能相似甚至是相同的方法可以用同一个名字
- 不定长参数
1.参数列表中只能(至多)有一个不定长参数
2.不定长参数必须在最后位置
3·不定长参数的本质是数组
- 构造器
- 特点(特性):
1.Java在new对象的时候,先看对象所对应的类有没有构造器,有的话有什么样的构造器;如果没有构造器,则无法构建对象(创建对象)
2.每个类会有一个默认的无参的构造器
3.在对象被实例化时调用了构造器
4.我们创建对象实际上是通过构造器创建的
5.如果一个类中显示的声明了一个构造器,原来默认自带的无参构造器就失效(被覆盖)。如果有多个构造器,必须重载。
四、学习总结
1、今天开始学习的新篇章,学习了面向对象的相关内容,创建对象,调用对象,调用方法都比较容易掌握,并没有产生什么困惑。

浙公网安备 33010602011771号