一.类的无参方法 1.概述: (1)类是由一组具有相同属性和共同行为的实体抽象而来的 (2)对象执行的操作是通过编写类的方法实现的 (3)类的每一个方法都实现了一个功能 2.定义类的方法 编写方法: (1)定义方法名和返回值类型 (2)在{}中编写方法的主体部分 注意: (1)方法体放在一对大括号中(方法体就是一段程序代码,完成一定的工作) (2)方法名主要在调用这个方法时使用(在java中一般采用骆驼式命名法) (3)方法执行后可能会返回一个结果,该结果的类型称为返回值类型(使用return语句返回值) 语法:
return 表达式;
注: (1)return语句是跳转语句 (2)如果方法没有返回值,则返回值类型为void (3)在编写程序时一定要注意方法声明中返回值的类型和方法体中真正返回值的类型是否匹配(如果不匹配,编译器会报错) return跳转语句的作用: (1)跳出方法 (2)给出结果 注:定义类的方法必须包括以下三个部分: (1)方法的名称 (2)方法返回值的类型 (3)方法的主体 3.方法调用 语法:
对象名.方法名();
注: (1)java中的类是程序的基本单位 (2)每个对象需要完成特定应用程序功能 (3)当需要某一对象执行一项特定操作时,通过调用该对象的方法来实现 (4)在类中,类的不同成员方法之间也可以进行互相调用 方法调用形式: (1)同一个类中的方法,直接使用方法名调用该方法 (2)不同类的方法,首先创建对象,在使用"对象名.方法名()"来调用 4.变量的作用域 成员变量和局部变量 java中以类来组织程序,类中可以定义变量和方法,在类的方法中,同样也可以定义变量 定义变量: (1)成员变量: 可以直接使用本类定义成员变量,如果其他类的方法要访问它,必须首先创建该类的对象,然后才能通过操作符"."来引用 (2)局部变量: 它的作用域仅仅在定义该变量的方法内,因此只有在这个方法中能够使用 5.成员变量与局部变量的区别:
public class Aini {
String house;
int cats;
//成员变量,java自动给赋初始值
public void show() {
int a = 0;
String a1 = null;
//局部变量,要自行声明并赋值
}
}
(1)作用域不同: 局部变量的作用域仅限于定义它的方法,在该方法外无法访问 成员变量的作用域在整个类都是可见的,所有成员方法都可以使用,如果访问权限允许,还可以在类外部使用成员变量
(2)初始值不同: 对于成员变量,如果在类定义中没有给它赋初始值,java会给它一个默认值,基本数据类型的值为0,引用类型的值为null (初始值的赋值,详细见我发的上一篇文章“类和对象>万物皆对象”) 但是java不会给局部变量赋初始值,因此局部变量必须要定义赋值后再使用 注:在同一个方法中,不允许有同名的局部变量: 在不同方法中,可以有同名的局部变量 局部变量可以和成员变量同名,并且在使用时局部变量具有更高的优先级 6.面向对象编程: 背景: 面向对象编程(Object Oriented Programming ,OOP)是一种计算机编程架构,是20世纪90年代才流行起来的一种软件编程思想.OOP的一条基本原则就是计算机是由单个能够起到子程序作用的单元或对象组合而成的,采用这种框架编程主要起到重用性,灵活性和扩展性的强大作用 语法:
main(){
//显示总成绩
调用方法;
//显示平均分
调用方法;
}
好处: (1)类的方法可以实现某个特定的功能,其他的类不需要知道它是如何实现的 (2)知道实现此功能的类和它的方法名,就可以直接调用,而不用重复编码
案例:
public class Objects_009 {
String pp;
String cpu;
String zb;
String xsq;
String yp;
String nc;
//声明成员变量
public String show() {
System.out.println("品牌:" + pp + "\nCPU:" + cpu + "\n主板:" + zb
+ "\n显示器:" + xsq + "\n硬盘:" + yp + "\n内存:" + nc);
//创建方法,写出输出格式
return "程序结束!";
//String类型方法,对应String类型写出返回值,(在程序最后输出)
}
public static void main(String[] args) {//在main方法中调用输出
//创建扫描仪
Scanner bdqn = new Scanner(System.in);
//使用new关键字创建对象并调用类
Objects_009 a = new Objects_009();
//为成员变量赋值
System.out.print("请输入品牌:");
a.pp = bdqn.next();
System.out.print("请输入CPU:");
a.cpu = bdqn.next();
System.out.print("请输入主板:");
a.zb = bdqn.next();
System.out.print("请输入显示器:");
a.xsq = bdqn.next();
System.out.print("请输入硬盘:");
a.yp = bdqn.next();
System.out.print("请输入内存:");
a.nc = bdqn.next();
//接收show方法的返回值,并输出方法中内容(输出结果最后一项为返回值的值)
String a1 = a.show();
System.out.println(a1);
}
}