Java学习之多态---类成员变化
类成员
一、成员变量
编译时:变量(f)所属类(Fu)中是否有成员变量,有:编译成功,没有:编译失败
运行时:变量(f)所属类(Fu)中是否有成员变量,运行该类(Fu)中的成员变量
class Fu
{
int num = 3;
} class Zi extends Fu
{
int num=4;
} class Demo
{
public static void main(String[] args)
{
Fu f=new Zi();
System.out.println(f.num);//结果:3
//
}
} class Fu
{
//int num = 3;
} class Zi extends Fu
{
int num=4;
} class Demo
{
public static void main(String[] args)
{
Fu f=new Zi();
System.out.println(f.num);//结果:编译失败
}
}
二、成员函数
编译时:变量(f)所属类(Fu)中是否有成员函数,有:编译成功,没有:编译失败
运行时:对象所属的类(Zi)中是否有成员函数,有:运行对象的类(Zi)的成员函数,没有:运行父类(Fu)成员函数
class Fu
{
void show()
{
System.out.println("Fu");
}
} class Zi extends Fu
{
void show()
{
System.out.println("Zi");
}
} class Demo
{
public static void main(String[] args)
{
Fu f=new Zi();
f.show();//结果:Zi
}
} class Fu
{
//void show()
//{
// System.out.println("Fu");
//}
} class Zi extends Fu
{
void show()
{
System.out.println("Zi");
}
} class Demo
{
public static void main(String[] args)
{
Fu f=new Zi();
f.show();//结果:编译失败
}
}
三、静态函数
编译时:变量(f)所属类(Fu)中是否有静态函数,有:编译成功,没有:编译失败
运行时:变量(f)所属类(Fu)中是否有静态函数,有:运行成功,没有:运行失败
class Fu
{
static void show()
{
System.out.println("Fu");
}
} class Zi extends Fu
{
static void show()
{
System.out.println("Zi");
}
} class Demo
{
public static void main(String[] args)
{
Fu f=new Zi();
f.show();//结果:Fu
}
} class Fu
{
//void show()
//{
// System.out.println("Fu");
//}
} class Zi extends Fu
{
static void show()
{
System.out.println("Zi");
}
} class Demo
{
public static void main(String[] args)
{
Fu f=new Zi();
f.show();//结果:编译失败
}
}
Java学习之多态---类成员变化的更多相关文章
- java学习(二)多态中成员变量详解
今天我总结了一下java多态中成员变量的赋值与调用 举一个我当初做过的小案例: class Fu{ int num; void show(){} } class Zi extends Fu{ //in ...
- Java学习笔记之---类和对象
Java学习笔记之---类和对象 (一)类 类是一个模板,它描述一类对象的行为和状态 例如:动物类是一个类,动物们都有属性:颜色,动物们都有行为:吃饭 public class Dog { Stri ...
- java学习一目了然——File类文件处理
java学习一目了然--File类文件处理 File类(java.io.File) 构造函数: File(String path) File(String parent,String child) F ...
- Java学习笔记——File类之文件管理和读写操作、下载图片
Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...
- Java学习:Properties类
Java学习:Properties类 学习目标 认识properties文件,理解其含义,会正确创建properties文件. 会使用java.util.Properties类来操作propertie ...
- Java学习:File类
Java学习:File类 File类的概述 重点:记住这三个单词 绝对路径和相对路径 File类的构造方法 File类判断功能的方法 File类创建删除功能的方法 File类获取(文件夹)目录和文件夹 ...
- Java学习笔记 04 类和对象
一.类和对象的概念 类 >>具有相同属性和行为的一类实体 对象 >>实物存在的实体.通常会将对象划分为两个部分,即静态部分和动态部分.静态部分指的是不能动的部分,被称为属性,任 ...
- JAVA学习:多态
多态:可以理解为事物存在的多种体现形态. 人:男人,女人 动物:猫,狗. 猫 x = new 猫(); 动物 x = new 猫() 1,多态的体现 父类的引用指向了自己的子类对象. 父类的引 ...
- Java学习之字符串类
String在Java中是一个类类型(非主类型),是一个不可被继承的final类,而且字符串对象是一个不可变对象.声明的String对象应该被分配到堆中,声明的变量名应该持有的是String对象的引用 ...
随机推荐
- Spring事务传播及数据库事务操作
从Spring 事务配置说起 先看看Spring 事务的基础配置 <aop:aspectj-autoproxy proxy-target-class="true"/> ...
- lLinux 下 Stress 压力测试工具
作者信息 邮箱:sijiayong000@163.com Q Q:601566386 Stress是什么 stress是一个linux下的压力测试工具,专门为那些想要测试自己的系统,完全高负荷和监督这 ...
- 《剑指offer》面试题8 旋转数组的最小数字 Java版
(找递增排序旋转数组中的最小数字) 书中方法:这种题目就是要寻找数组的特点,然后根据这个特点去写.旋转后的递增数组分为两段递增序列,我们找到中点,如果比第一个元素大,表示在第一段递增序列里,如果比第一 ...
- [fw]linux测试工程介绍(Linux Test Project)
http://ltp.sourceforge.net/ Linux Test Project, 后台很硬,由SGI™ 发起, IBM维护,所以质量有保障. 里面介绍了很多工具,对于一般的基准测试应该是 ...
- python写入mysql
import pymysql conn = pymysql.connect(host='192.168.70.129',port=3306,user='root',passwd='123456', ...
- MySQL的数据类型:文本、数字、日期/时间
在MySQL中,有三种主要的类型:文本.数字和日期/时间类型. 文本类型(text):数据类型 描述 CHAR(size) 保存固定长度 ...
- C#学习大纲
一.C#: 1.进制转换 2.vs界面内容 熟悉软件 3.数据类型 :引用类型 值类型 4.变量 (存储数据)一个变量存储一个数据 5.类型转换 6.运算符:算数运 ...
- Codeforces Round #392 (Div. 2) - B
题目链接:http://codeforces.com/contest/758/problem/B 题意:给定n个点灯的情况,灯只有四种颜色RBGY,然后如果某个灯坏了则用'!'表示,现在要求将坏的灯( ...
- GC(垃圾回收器)中的算法
GC的两种判定方法 (1) 引用计数法 给对象添加一个引用计数器,每当引用一次+1,每次失效时-1,当计数器为0时,表示对象就是不可能再被使用的. (2) 可达性分析算法 将“GC Roots”对象作 ...
- java一个对象使用内存