Java面向对象(一):方法—初识面向对象
第一节 方法
1.1定义
定义:封装了能够完成特定功能的代码块,是程序编程中的一种功能实现单元;
1.2语法
修饰符 返回值类型 方法名(参数列表) {
方法体;
}
例子:
1 public static int sum(inta,int b){ 2 return a+b; 3 }
1、修饰符:public static (常见)
2、返回值类型:方法运行的返回结果数据类型,如果没有则用关键字void(类的构造函数没有返回值类型及数值);如果方法定义有返回值类型,则必须用return返回对应的数据类型的数据。
注:return作用
(1)、结束方法的操作;
(2)、将返回值赋给调用方法的变量。
3、方法名:标识符,见名知意,驼峰命名;
4、参数列表:形式参数如:int a .多个逗号隔开 int a,int b
实际参数:调用方法时传入的具体参数
备注:方法的参数列表可以不写l
5、方法体:实现具体功能的代码块
备注:调用方法的实参必须与方法的形参数据类型一致
注:方法与方法之间时平级关系,在一个方法里面不能再去声明一个方法但是可以调用。
例程:demo1.java
1.3方法的调用
1、直接调用:意义不大;
2、输出调用:在调用处直接输出,意义也不大;
3、复制调用:在调用处赋值,常用。
1.4方法的重载
重载:方法的方法名相同,方法的参数列表的参数数据类型或数据个数不同(即参数列表不能完全相同要么类型不同要么数量不同)。
方法的重写:方法名相同,参数列表和参数类型都相同。(面向对象继承)
demo1.java;
1 package mathod_object; 2 /** 3 * 方法的调用与重写 4 * @author kanekiyi 5 * */ 6 7 public class demo1 { 8 9 //方法里面不能再定义方法只能调用 10 public static void main(string[] args) { 11 // 直接调用 12 sum(8,9); 13 14 // 赋值调用 15 int a = sum(7,9); 16 system.out .println(a); 17 18 // 输出调用 19 system.out .println(sum(7,9)); 20 21 } 22 23 public static int sum(int a, int b) { 24 return a + b; 25 } 26 27 // 方法的重写,形参不同 28 public static int sum(int a, int b,int c) { 29 return a + b+c; 30 } 31 32 public static int sum(long a, long b,long c) { 33 return (int)(a + b+c); 34 } 35 36 }
第二节 面向对象
2.0对象与类的理解
对象,万物皆对象;
类是描述对象属性和行为的抽象概念,即类是对象的模板,对象是类的具体实例;
以学生类及其对象为例:
学生类包括:描述学生的静态属性的姓名、学号年龄等,描述学生动态属性(行为)学习、打游戏等;
通过类就可以创建一个学生对象来描述一个学生:
一个叫王小明的学生,他的学号为0001,喜欢打lol和学java;
这就是根据学生类模板所创建的一个具体学生对象。
2.1面向对象思想的特点
一、更加符合日常生活的思想行为习惯;
二、将复杂的事情简单化;
三、角色由执行者变成了指挥者。
2.2面向对象—类
2.2.1类定义
1、类:能够描述具体事物的一个抽象概念。(创建对象的模板)
2、类包含内容:
属性:类所包含的特性 成员变量 类里面方法外面
行为:创建对象能做什么 成员方法 不用写static
3、类的创建六字箴言:有什么(属性),会什么(行为);
2.3对象
2.3.1 对象:
对象即为类创建出的实例,是类的抽象具体化;
2.3.2 引用
1、对象操作类属性和行为的一种方式;
2、格式:
对象.成员变量; 访问属性
对象.成员方法; 访问方法
2.3.3类、引用及对象之间的关系:
student student1 = new student();
类 引用名 对象
例程: textstudent.java
1 package mathod_object; 2 /** 3 * 4 * @项目名称:javaseday08m 5 * @模块功能:类与对象 6 * @模块版本: 7 * @jdkversions:jdk 8.0 8 * @author: kanekiyi 9 */ 10 11 // 创建学生类 12 class student { 13 14 //成员变量(属性) 15 string name; 16 int age; 17 int stuid; 18 19 //成员方法(行为) 20 public void study(string project) { //成员方法可以不用写static 21 system.out.println(name+"在学"+project); 22 } 23 24 public void playgame(string game) { 25 system.out.println(name+"喜欢玩"+game ); 26 } 27 28 } 29 30 // 根据学生类创建学生对象 31 public class textstudent { 32 public static void main(string[] args) { 33 // 创建学生对象 34 student stu1 = new student(); 35 // 对象调用类成员 36 stu1.age = 18; 37 stu1.stuid = 8888; 38 stu1.name = "王小明"; 39 stu1.playgame("lol"); 40 stu1.study("java"); 41 } 42 43 }