Java第十三天---类和对象以及方法
一、对象
现实世界中客观存在的物体,具有属性和方法 属性描述对象的特征 方法描述对象的行为(能干什么)
定义属性: 访问权限修饰符(暂时不写) 属性类型(数据类型) 属性名(变量名);
定义方法: 访问权限修饰符 返回值类型 方法名(参数列表[可以不写]){方法体}
创建对象: 类名 对象名= new 类名();
给对象的属性赋值 对象名.属性名 = 数据;
对象调用方法: 对象名.方法名()
二、类
具有相同属性和方法的多个对象的合集 类是抽象的,对象的是具体的 类是模板,通过类来创建对象,创建的对象就具有类中的定义的属性和方法
三、方法
方法根据是否有返回值分为:无返回值的方法和有返回值的方法
方法没有返回值,返回值类型写void public void noVoid(){ System.out.println("我是没有返回值的方法"); }
方法有返回值,返回值是什么类型,就写什么类型,返回值类型可以是基本数据类型,也可以是引用数据类型,方法有返回值,需要使用return将结果返回 public int returnInt(){ return 100; }
方法需要通过对象来调用
调用的方法没有返回值,不需要用变量接收
调用有返回值的方法,你可以根据情况决定是否用变量来接收返回值
方法根据有没有参数分为无参方法和有参方法 定义无参方法 public void noParameter(){ System.out.println("我是一个无参方法"); } 定义有参方法 public void havaOneParameter(int num){ System.out.println("你传进来的参数是:"+num); } 定义有两个参数的方法 public void havaTwoParameter(String name,int age){ System.out.println("你的姓名是:"+name+",年龄是:"+age); }
方法的定义语法: 访问权限修饰符 返回值类型 方法名(数据类型 变量名1,数据类型 变量名2,...,数据类型 变量名n){方法体} 1)访问权限修饰符有4种:public(公共的) protected(受保护的) 默认的(不写修饰符) private(私有的) 2)返回值类型: 没有返回值的时候,写void 有返回值,返回值可以是基本数据类型,也可以是引用数据类型 3)方法名: 采用小驼峰命名法 见名知意 4)方法的参数列表,可以有可以没有,有参数的时候,可以有一个,也可以有多个 5)方法体:方法能具体干什么事情的代码 方法根据是否有返回值和参数分类: 1)无返回值的无参方法 2)无返回值的有参方法 3)有返回值的无参方法 4)有返回值的有参方法 调用有返回值的方法注意事项: 调用一个有返回值的方法,对于返回的结果,你可以直接输出,也可以使用返回类型的变量去接收返回值 调用需要传递参数的有参方法注意事项: 方法需要多少个参数,你就要传递多少个参数,并且需要按照其定义的顺序传递参数 综上所述,调用方法的两个原则是: 1)给什么接什么---》返回什么结果给你,你就用什么变量接收 2)要什么给什么---》方法需要什么参数,你就给什么参数
四、例 定义一个圆类型 提供显示圆周长功能的方法 提供显示圆面积的方法
package cn.bdqn.Day014面向对象.Homework.H5; /* *05:定义一个圆类型 提供显示圆周长功能的方法 提供显示圆面积的方法 * */ public class Garden { public double radius; public double π; public void circumference(){ double cir =2*radius*π; System.out.println("圆的周长为:"+cir); } public void area(){ double area=π*radius*radius; System.out.println("圆的面积为:"+area); } }
package cn.bdqn.Day014面向对象.Homework.H5; import java.util.Scanner; public class GardenText { public static void main(String[] args) { Garden a=new Garden(); Scanner sc =new Scanner(System.in); a.radius=sc.nextDouble(); a.π=3.14; a.circumference(); a.area(); } }