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对象的引用 ...
随机推荐
- Show Me the Code
最近在练习写Python代码,拥有150多道程序员面试题的LeetCode注重算法的实现,锻炼思维,还能在线测试代码的正确性,而Python练习册涉及到了Python实际的应用,锻炼解决问题的能力,托 ...
- Cannot modify header information - headers already sent by出错的原因
<?php ob_start(); setcookie("username","送家",time()+3600); echo "the user ...
- python常用模块---collections、time、random、os、sys、序列号模块
collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict. ...
- AJAX 获取Servlet文件路径
下面均不行: xmlRes.open("get","edu/hust/ajax/TestServlet",true); xmlRes.open("ge ...
- NGUI的Lebal需注意问题
1,为什么调节字体大小时,字体大小没变化,我们需要调节两个地方,如下图框柱显示 调节font size和size才可以同时控制字体的大小 2,label有时是不支持输入中文,但是支持复制进去,则这时我 ...
- BUUCTF--reverse2
测试文件:https://buuoj.cn/files/ef0881fc76e5bcd756b554874ef99bec/e8722e94-93d7-45d5-aa06-a7aa26ce01a1.ra ...
- 【学习总结】GirlsInAI ML-diary day-20-初识 Kaggle
[学习总结]GirlsInAI ML-diary 总 原博github链接-day20 初识kaggle 1-注册一个账号(由于被谷歌收购,因此可能需要梯子) 2-Competition - 学会看一 ...
- 踩坑,vue项目中,main.js引入scss文件时报错
当我们在src目录下创建.scss文件,并在main.js中引用,运行时会报: ERROR Failed to compile with 1 errors 5:25:07 PMThis relativ ...
- elasticsearch 基础 —— 分布式文档存储原理
路由一个文档到一个分片中 当索引一个文档的时候,文档会被存储到一个主分片中. Elasticsearch 如何知道一个文档应该存放到哪个分片中呢?当我们创建文档时,它如何决定这个文档应当被存储在分片 ...
- office2016pro专业版命令行激活
1.首先查看Office2016安装目录在哪里,如果是默认安装,没有修改路径,是在C:\Program Files\Microsoft Office\Office16目录下,具体路径还得自行查看,我的 ...