您的位置:首页 > 职场人生

黑马程序员----java基础面向对象特点及封装

2015-07-31 16:55 495 查看
------<a  target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

黑马程序员----java基础面向对象特点及封装

 

课堂总结:

/*

面向对象思想:

面向过程:一步一步做事情

面向对象:找对象来做事情,对象本身包含做事情的步骤

特点:

角色发生转变,执行者变成指挥者

 

特征:

封装

继承

多态 

类和对象  

 

类:对事物的描述

对象:这一类事物的实体(实例)

 

面向对象:我们需要操作实实在在的对象

 

定义类的步骤

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();

}

}

}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  黑马程序员