关闭

类和对象与继承

标签: 对象继承
119人阅读 评论(0) 收藏 举报
分类:

类与对象
1.类:类是客观存在的,抽象的,概念的东西。
public class Dog{
String name;
int age;

void bark()//汪汪叫
{
System.out.println(“汪汪,咬你哦”);
}

void hungry()
{
System.out.println(“饿了,要吃饭啦”);
}
}
1.public 是类的修饰符,表明该类是公共类,可以被其他类访问。
2.class 是定义类的关键字。
3.Dog是类的名称。
4.name,age是类的变量,也叫属性;bark(),hungry()行为也是类中的方法。

(引用
局部变量:在方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。

成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化(分配内存)。成员变量可以被类中的方法和特定类的语句访问。

类变量:类变量也声明在类中,方法体之外,但必须声明为static类型()。static也是修饰符的一种。

2.对象:对象是具体的,实际的,代表一个事物。例如:车是一个类,汽
车,自行车就是他的对象。(对象具有属性和行为,行为也就是方法)

关于类与对象的描述:类是对象的模版,对象是类的一个个体。

对象的定义方法(创建对象也叫类的实例化)
1,对象声明:Person p ; 类名 对象名;(声明一个类型为”Person”的对象p)
2,对象创建 p = new person(); 对象名 = new 类名();( new作用:分配内存空间。用来存放p这个对象)

构造方法
Person p = new person(); (声明一个类型为”Person”的对象p,但仅仅是声明,未真正让这个p诞生,new关键字用于分配内存空间来放置p对象。)

1.new后面的这个”person()“就是一个方法叫做构造方法。(构造方法是由系统自动生成,一旦用户编写了自定义的构造方法,那么系统将不再为类生成默认的构造方法,所以用将不能再使用无参构造方法来创建对象)

2.构造方法分为:无参构造方法和有参构造方法(有什么样的构造方法,就能依照构造方法生产对象)

方法的重载
一个类可以有多个构造方法,方法名相同,参数列表不同,这叫做构造方法的重载。(只跟参数有关,就是两个方法名相同,但是参数不同,根本上就是不同的方法)

关键字this
this:可以为调用了其方法的那个对象生成相应的标记(哪个对象调用了方法,那么这个方法内的this指的就是哪个对象,当方法的传入参数与方法本身定义的变量同名时,引用方法自身的变量要加this)

static关键字
static表示“全局”或者“静态”的意思,用来修饰全局变量和方法,也可以形成静态static代码块。(声明static的变量实质上就是全局变量)

继承
1.类和类之间的继承关系,其中父类又叫 超类或 基类,子类又叫 派生类。父类是子类的一般化,子类是父类的特化(具体化)。
注意:一个类不能继承多个类,一个类可以有多个子类。

2.继承使用的关键字的extends

方法的覆盖(重写)
1.父类与子类之间的多态性,对父类的方法进行重新定义,在子类中定义的某方法与其父类有相同的名称和参数,就可以称为该方法被重写或者覆盖了。

多态
指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式(调用相同的方法,可以得到不同的结果和表现形式)

super关键字
super关键字引用当前对象的直接父类中的属性和方法(用来访问直接父类中被隐藏的属性和方法,经常在父类与子类中有相同属性和方法定义时使用)

注意:若要自己书写super()方法 要遵守以下两点
1.super要放在第一行。 2.super所指引的构造方法在父类中必须要有。

1
0
查看评论

模板类的继承问题

首先大家来看这段代码: class A { public: void Show() { cout << "A::Show() !!!" << endl; } void Fun() { ...
  • ooooo12345re
  • ooooo12345re
  • 2016-04-22 12:07
  • 727

类和对象:继承

读书笔记: 我的代码:# -*- coding: gbk -*- import math class Point(): def __init__(self,x,y): self.x = x self.y = y class Line(): def __...
  • zss041962
  • zss041962
  • 2017-12-25 23:18
  • 25

类和对象 -----继承

1:// lesson3.cpp : 定义控制台应用程序的入口点。 继承:基类(父类)派生类(子类) 以animal(动物)eatgrassanimal(食草动物)rabbit(兔子)举例 #include "stdafx.h" #include using namespa...
  • Ycx_lq
  • Ycx_lq
  • 2017-05-08 22:59
  • 83

python中类的创建,父子类的继承

#!/usr/bin/python class Ppoint: def __init__(self, x, y): self.x = x self.y = y # def __del__(self): # class_name = self.__c...
  • sruru
  • sruru
  • 2014-08-07 10:15
  • 1340

Java学习笔记——类与对象(封装、继承与多态)

类与对象是在OO变成里面经常出现的字眼,简单的可以理解为类是一类对象的抽象,对象是某一个类的具体实现。面向对象的编程,其实主要就体现在封装、继承与多态这三个方面。下面将逐个的介绍这三个名词。 一、封装         面向对象里面类的提出就是为了实现封装,...
  • kyoky_xxj
  • kyoky_xxj
  • 2013-04-23 11:06
  • 1645

继承,封装,多态,重载

继承,封装,多态,重载 封装就是把各种方法和变量合并到一个类,用这个类代表某个对象为完成一定的任务所能保存的范围以及它能执行的操作。 继承就是根据现有类的方法和成员变量生成新的类的功能 多态就是对象随着程序执行而使其形式发生改变的能力。 抽象就是在暂时忽略对象的具体细节的功能。 1,为什...
  • li19236
  • li19236
  • 2014-11-25 18:10
  • 1109

C++类和对象总结

类和对象的区别: 类是抽象的,对象是具体的,所以类不占用内存,而对象占用内存; 总之类是对象的抽象,而对象是类的具体事例 假如:类是水果,那么对象就是香蕉…面向对象的三大特点: 封装、继承、多态类的三种访问限定符: 1. public(公有的) 2. private(私有的) 3...
  • xiaobingRSQ
  • xiaobingRSQ
  • 2017-05-12 17:56
  • 900

PHP之有关类和对象的系统函数与运算符

系统函数class_exists() 判断某个类是否存在 interface_exists() 判断接口是否存在 get_class() 获取某个对象所处的类名 get_parent_class() 获取某个对象所属父类的类名 get_class_methods() 获取一个类所有方法,返...
  • xuandaijian
  • xuandaijian
  • 2016-02-29 21:26
  • 622

java 类和对象的关系

一 1.
  • u014182962
  • u014182962
  • 2014-10-13 11:24
  • 1546

第十一章 类和对象

1.单词 class 类        object 对象     return 返回      programming设计,规划  ,编程     null空   &#...
  • qq_36074088
  • qq_36074088
  • 2016-09-08 18:15
  • 134
    个人资料
    • 访问:1047次
    • 积分:126
    • 等级:
    • 排名:千里之外
    • 原创:12篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论