java基础的第二轮快速学习!day09
day09
1.方法的重载
class Method11{ //总结在同一个类中,方法的名字相同,参数列表必须不同(类型不同),与返回类型无关,构成方法的重载 //练习L使用方法完成,获取两个数中最大的数 public static int max(int a,int b){ return a>b?a:b; } public static void max(double x,int y){ System.out.println(x>y?x:y); } public static void max(double x,double y){ System.out.println(x>y?x:y); } public static void main(String[] args){ System.out.println(max(10,12)); System.out.println(max(324,56)); max(0.9,1); max(13.2,12.9); } }
2.面向对象的概念
---面向对象:虚拟世界模拟现实生活,必须保证模拟一致;
---面向过程
---类:对同一类事物的抽象描述,也就是说-不是具体的
如:电脑类,水杯类,人类....
---对象:万物皆为对象,也就是说:具体的实例;
如:我的电脑,张三的水杯;
---类与对象之间的关系
抽象与具体的关系
---描述对象的特征,称为属性,如:颜色,价格,尺寸...
---对象所做的事情,称为方法或行为
张三对象:
属性:名字,性别,年龄,身高,体重,住址...
方法:学习,说话,吃饭
李四对象:
属性:姓名,年龄,住址,性别....
方法:睡觉,学习,发红包,游泳...
----将多个对象找到相同的属性和方法组合在一起,形成类
学生类:
属性:姓名,年龄,性别,住址
方法:学习
3.编写类的操作步骤
第一步:编写类
语法格式:[修饰符] class 类名{
}
第二步:编写属性,也叫成员变量
语法格式:[修饰符] 数据类型 属性名称 [=值];
--属性编写在类中
--[]中的内容是可有可无的
--属性名称也是标识符,建议采用驼峰命名法。见名知意
--当属性或成员变量没有赋值时,则是有默认值的
数据类型不同,则默认值不同
整数类型默认值为0
浮点类型默认值为0.0
字符类型默认值为\u0000
布尔类型默认值为false
所有引用类型默认值为null
第三步:编写方法
语法格式:
[修饰符] 返回类型 方法名称([参数类表]){
方法体
}
--方法必须编写在类中
--子啊面向对象中,方法的修饰符暂时编写为public
4.编写测试类
也就是main方法的类
5.创建对象
语法格式:类名 引用名称=new 类名();
一个类可以创建多个对象。也叫做实例化
6.访问对象中的属性和方法
--访问对象中的属性:
引用名称.属性名称
//第一步:编写类 class Student{ //第二步:编写属性也叫做成员变量 String name;//默认值为null int age;//默认值为0 char sex;//默认值为\u0000 String address;//默认值为null //第三步:编写方法 public void study(){ System.out.println("正在学习面向对象课程......"); } } //编写学生的测试类 class StudentTest{ public static void main(String[] args){ //根据学生类来创建对象 /* 创建对象内存分析: new Student();表示创建一个对象,new 的Student,则创建的就是学生对象, 同时在堆内存中开辟一块空间 将右侧的对象地址赋给左侧引用名称zs */ Student zs=new Student(); //通过引用名称zs获取对象中的属性 System.out.println(zs.name);//null //给对象中的属性进行赋值 引用名称.属性名称=值 zs.name="张三"; zs.age=19; zs.sex='男'; //输出引用名称zs对应对象中所有属性的值 System.out.println("姓名:"+zs.name+"\n年龄"+zs.age+"\n性别"+zs.sex+"\n地址"+zs.address); //使用引用名称访问对象中的方法 zs.study(); //创建第二个学生对象,一个类可以创建多个对象。 Student s=new Student(); } }