null&this&super&向上转型
向上转型:父类声明子类实例化对象 例如A是父类 B是子类
1 : 实际上是父类的对象但将会丢失子类没有的父类方法 ,如果调用方法 将会调用子类重写的父类方法
2:上转型对象不能调用子类新增的成员变量和子类新增的方法
3:上转型对象可以调用子类继承或重写的成员变量和方法
4:如果子类重写了父类的某个方法后,当对象的上转型对象调用这个方法时,调动的一定是子类重写的方法
final的用法?
1:修饰变量 是常量
2:修饰方法 是最终方法 不能被覆盖
3:修饰类 不能被继承
this的用法?
1:指向当前对象或示例
2:当我们使用的形式参数和成员变量名字相同时,这时要用this指明成员变量
super的用法?
1:super用来引用当前对象的父类
2:用来访问父类别隐藏的成员变量,如 super.variable
3:用来调用父类被重写的方法 如 super.Method([paramlist])
4:用来调用父类的构造方法 如 super([paramlist])
null关键字的用法?
java中,变量的使用都遵循一个原则,先定义,并且实例化后才能使用。有时候,我们定义一个引用对象,但是指定值,程序可能在try语句块中初始化。这时候我们使用变量的时候就会出错。所以我们可以先给变量指定一个null值,问题就解决了。如
Connection conn = null;
try {
conn = DriverManager.getConnection(null, null, null);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
1:null用来标识一个不确定的对象,因此可以将null赋给引用类型变量,但不可以将null赋给基本类型变量 如 int a = null 是错误的 而 object o = null是正确的
2:null本身不是对象,也不是Object的实例
3:java默认变量赋值
3.1:整数类型 int short long byte 默认值为0
3.2:非整数 float double 默认值0.0
3.3:boolean 类型 默认值false
4:容器类型与null
4.1:List:允许重复元素,可以加入任意多个null
4.2:Set:不允许重复元素,最多可以加入一个null
4.3:Map: 其key最多可以加入一个null,value字段没有限制
4.4:数组;基本类型数组,定义后如果不给定初始值,则java运行时会自动给定值。引用其数组,则所有的元素值为null
5:null其他作用
5.1:判断一个引用类型是否null,用==来判断
5.2:释放内存,让一个非null的对象指向null向null,这样这个对象就不在被任何对象应用了,等待JVM垃圾回收机制去回收
null&this&super&向上转型的更多相关文章
- 课堂所讲整理:super和转型(修改版)
创建父类: package org.hanqi.pn0120; public class Father { private String name; private int age; public S ...
- java多态-向上转型和向下转型
向上转型:符合“is a”,是安全的,子类向上到父类,多余的属性和方法会丢弃 向下转型:不安全的,用instanceof提前判断一下,以免抛出异常 instanceof用法: result = obj ...
- (原)java 向上转型中,任何域的访问操作都是由编译器解析,不是多态
最近在向java发力,学习学习了下.看到了多态这一节,书中有个比较好的例子,所以就准备写下来,记录下来: package dynamic_binding01; public class dynamic ...
- java的向上转型总结
在<think of java>中对'向上转型'有着如下的描述 看完之后很蒙圈,所以自己在网上找了一些描述,并自己做了简单的总结 简单的例子 class A{ public void A1 ...
- Java入门记(二):向上转型与向下转型
在对Java学习的过程中,对于转型这种操作比较迷茫,特总结出了此文.例子参考了<Java编程思想>. 目录 几个同义词 向上转型与向下转型 例一:向上转型,调用指定的父类方法 例二:向上转 ...
- java 向上转型 向下转型
//父类 四边形 class Quadrangle{ public static void draw (Quadrangle q){ } } //子类 public class Parallelog ...
- Java向上转型与向下转型
一.向上转型 例如:Parent p=new Son(); 这样引用p只能调用子类中重载父类的方法:但属性是父类的:如果想调用子类属性的话,可以用getter()方法. 二.向下转型 子类对象的父类引 ...
- Java中的向上转型和向下转型
首先要明白一点向上转型和向下转型他们都是建立在继承的基础上. 一.向上转型 子类到父类的转换通常称作向上转型,通俗的说就是定义父类对象指向子类对象. 下面通过一个例子来深入理解向上转型. //定义一个 ...
- C++ (P160—)多继承 二义性 虚基类 “向上转型”
1 多继承中,必须给每个基类指定一种派生类型,如果缺省,相应的基类则取私有派生类型,而不是和前一个基类取相同的派生类型 2 一个类的保护成员只能被本类的成员函数或者它的派生类成员函数访问 3 由于c+ ...
随机推荐
- [OrangePi] Installation on SD Card
Download any of the available images (xz archive) from Mega or GoogleDrive Download scriptbin_kernel ...
- 关闭微软对win10的推送
找到windows中安装的更新,卸载 KB3035583 这个更新即可
- Subversion简明手册--使用hook svn
使用 hook ,为了方便管理员 控制提交的过程 Subversion 提供了 hook 机制.当特定的 事件发生时,相应的 hook 会被调用, hook 其实就相当于特定 事件的处理函数.每个 h ...
- [转]通过PowerShell工具跨多台服务器执行SQL脚本
转至:http://www.cnblogs.com/SameZhao/p/4743692.html 有时候,当我们并没有合适的第三方工具(大部分需要付费)去管理多台数据库服务器,那么如何做最省力.省心 ...
- Date() 及其 如何验证用户输入的日期是合法的
1.var someDate = new Date(Date.parse("May 25, 2004")); <=> var someDate = new Dat ...
- python通过win32api轻松获取控件的属性值
1.如何利用句柄操作windows窗体 首先,获得窗体的句柄 win32api.FindWindows() 第二,获得窗体中控件的id号,spy++ 第三,根据控件的ID获得控件的句柄(hwnd) ...
- Linux的视频编程(V4L2编程)【转】
本文转载自:http://blog.csdn.net/tommy_wxie/article/details/11472073 一.什么是video4linuxVideo4linux2(简称V4L2), ...
- 6*17点阵的Window程序, Java写的。
package com.wulala; import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;imp ...
- Java字符串转换
public class StringConvertToInt{ public static void main(String[] args) { String a ="12a34bW()5 ...
- Linux Runtime PM介绍【转】
转自:http://blog.csdn.net/wlwl0071986/article/details/42677403 一.Runtime PM引言 1. 背景 (1)display的需求 (2)系 ...