------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
课堂总结:
/*
面向对象思想:
面向过程:一步一步做事情
面向对象:找对象来做事情,对象本身包含做事情的步骤
特点:
角色发生转变,执行者变成指挥者
特征:
封装
继承
多态
类和对象
类:对事物的描述
对象:这一类事物的实体(实例)
面向对象:我们需要操作实实在在的对象
定义类的步骤
1.类名
2.成员变量 -- 属性 -- 通常的叫法 属性
3.成员方法 -- 行为 -- 通常的叫法 方法
封装:
1.隐式类的实现细节和属性,使用关键字private
2.提供对外的公共的访问方式
3.当对外的公共的访问方式的参数名和成员变量的名字一致时,使用this来修饰成员变量.
使用对象的步骤
1.创建对象
2.对象名.方法名()
1.赋值
2.取值
3.使用其他成员方法
成员变量和局部变量的区别
1.类中的位置不同
类中方法外
方法声明上和方法定义中
2.
3.
4.
方法的形式参数是类名的时候,实际上要的是一个对象
匿名对象:然并卵
调用一次方法的时候
作为参数传递的时候
*/
class {
public static void main(String[] args){
System.out.println();
}
}
课堂练习1:
/*
定义学生类
分析:
属性:姓名,年龄,性别
行为: 学习,吃饭,睡觉
成员变量: 姓名,年龄,性别
成员方法: 学习,吃饭,睡觉
实现:
1.给类起名字 --见名知意
2.写成员变量
定义变量一样,但是可以先不用先初始化值
3.写成员方法
定义方法一样,但是不用写static
测试学生类
1.定义测试类,里面要用main()
2.创建学生对象
格式:
数据类型 对象名 = new 数据类型();
3.使用学生对象
格式:
成员变量
对象名.成员变量名
成员方法
对象名.成员方法名
4.保存文件
文件名字和测试类名字
*/
class StudentTest{
public static void main(String[] args){
//创建对象 Scanner sc = new Scanner(System.in);
// 数据类型 变量名 = new 数据类型();
Student s = new Student();
System.out.println("姓名为:"+s.name);
System.out.println("年龄为:"+s.age);
System.out.println("性别为"+s.sex);
System.out.println("---------------");
s.name = "闯闯";
s.age = 18;
s.sex ="男生";
//使用成员变量
System.out.println("姓名为:"+s.name);
System.out.println("年龄为:"+s.age);
System.out.println("性别为"+s.sex);
//使用成员方法
s.study();
s.eat();
s.sleep();
}
}
class Student {
//成员变量
//姓名
String name;
//年龄
int age;
//性别
String sex;
//成员方法
//学习
public void study(){
System.out.println("天天学习 ,好好向上 ... ");
}
//吃饭
public void eat(){
System.out.println("天天吃饭 , 健健康康 ... ");
}
//睡觉
public void sleep(){
System.out.println("天天睡觉 , 不要热醒 ... ");
}
}
课堂练习2:
九/*
葫芦娃类
1.起类名 HuLuWa
2.属性 --> 成员变量
姓名
年龄
颜色
3.行为 --> 成员方法
吃饭
救爷爷
当age数据不安全的时候,我们就使用 一个关键字 private 来修饰这个age,造成一个效果,在类的外面不能够直接访问age ,但是 ,连正确的是都不能赋值了 .
这个时候 怎么办?
我需要提供一个给age 赋值的方法,可以赋值
封装 :
1.使用private关键字修饰成员变量(把成员变量保护起来)
2.提供一个对外公共的访问方式(可以对成员变量)
封装的好处:
1.隐藏属性的实现细节,提供对外的公共的访问方式
setXxx() / getXxx()
2.提高了代码的复用性
3.提高安全性
原则 :
将所有的成员变量都隐藏,对外提供公共的访问方法 .
*/
class HuLuWaTest{
public static void main(String[] args){
//创建葫芦娃对象
HuLuWa wa1 = new HuLuWa();
// wa1.name = "大娃";
// wa1.age = 8;
// wa1.money();
// wa1.color = "红色";
wa1.setName("大娃");
wa1.setColor("红色");
wa1.setAge(8);
wa1.introduce();
wa1.saveGrandPa();
//System.out.println(wa1.age);
System.out.println(wa1.getName() +"--"+wa1.getAge() + "--"+wa1.getColor());
}
}
//实现
class HuLuWa{
//成员变量
//姓名
private String name;
//年龄
private int age; //错误:private修饰的age不可以在HuLuWa外访问
//颜色
private String color;
//给name 赋值
public void setName(String n){
name = n;
}
//取出name
public String getName(){
return name;
}
//给age赋值
public void setAge(int a){
//把a 赋值给 age
age = a;
}
//取出age的值
public int getAge(){
return age;
}
//给color赋值
public void setColor(String c){
//把a 赋值给 age
color = c;
}
//取出color的值
public String getColor(){
return color;
}
//成员方法
//吃饭
public void eat(){
System.out.println("吃葫芦~~");
}
public void saveGrandPa(){
System.out.println("一个娃干不来,叫其他兄弟娃一起来!");
}
public void introduce(){
System.out.println("我是" + name + ",我"+ age +"岁" + ",我是"+ color +",放了我爷爷!!! " );
}
}
System.out.println();
}
}
}