您的位置:首页 > 其它

面向对象的理解

2015-09-13 20:09 309 查看
今天对前几天的内容进行了回顾。有些东西老师讲得时候觉得挺明白的,但是自己写代码的时候还是觉得有点儿困难,猛得一做题不知道从哪儿下手。我觉得还是掌握得不够熟练,所以今天又回顾了一下老师讲的面向对象的内容,以下是我整理的一些知识点。

1.什么是对象 客观世界存在的物体。

2.对象和类的关系 同种对象的集合,是对现实世界中实体的抽象。

3.面向对象的三大特征? 封装性 继承性
多态性

4.封装的好处:a.隐藏类的实现细节 b.方便加入控制语句 c.方便修改实现 d.只能通过规定方法访问数据

5.继承父类黑子类的关系 子类继承父类的属性,但是不继承父类的值

6.构造函数的作用 用来对成员变量进行初始化

7.重构 参数的个数 参数的顺序 参数的类型

有关类的定义的一些知识点;

1.类的定义:关键字class+类名{}

cat c = new cat();//实例化对象,生成一只小猫

2.构造函数 public +类名,用来对成员变量进行初始化

3继承 抽取相同的部分 关键字是extends 举例说明:先定义一个Dog类 然后封装成员变量 private String name; pritvate int age;

然后定义一个void show(){}方法包括方法体,再定义void eat(){System.out.println("ken gu tou")}

用同样的方法定义一个Cat类

然后再在包的下边定义一个Animal的类 ,让Dog类和Cat类继承Animal这个类。在主函数里边实例化对象。给之前的成员变量加上set 和get方法

代码如下:

package com.wj.num1;

class Cat{

private String name;

private int age;

public Cat(int age,String name)//构造函数,用来对成员变量进行初始化

{

this.age = age;//this是指本对象主函数里边创建的,就是那只小猫

this.name = name;

}

public Cat()

{

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public void setAge(){

}

void show(){

System.out.println("name="+name+"age="+age);

}

}

public class Demo {

public static void main(String[] args) {

Cat c = new Cat(3,"lucy");

//c.age = 12;

c.setAge(-12);

c.show();

Cat c1 = new Cat();

c1.show();

}

}

4.多态 的代码如下

package com.wj.num1;

abstract class Animal{

private String name;

private int age;

abstract public void eat();//方法体

}

class Cat1 extends Animal{

private String name;

private int age;

public void eat()

{

System.out.println("chi yu");

}

}

class Dog1 extends Animal{

private String name;

private int age;

public void eat()

{

System.out.println("ken gu tou");

}

}

public class DuoTaiDemo {

public static void main(String[] args) {

Cat1 c = new Cat1();

Cat1 c1 = new Cat1();

Dog1 d = new Dog1();

Dog1 d1 = new Dog1();

//c.eat();

//c1.eat();

fun(c);

fun(c1);

// d.eat();

// d1.eat();

// fun1(d);

// fun1(d1);

fun(d);

fun(d1);

}

public static void fun(Animal a)

{

a.eat();

}

// public static void fun1(Dog1 d)

// {

// d.eat();

// }

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