Java SE 6、super关键字,包
1、super关键字
super代表父类的引用,用于访问父类的属性,方法,构造器
super可以访问父类的属性,但不能访问父类的 private 属性 super.属性名;
可以访问父类的方法,不能访问父类的private方法, super.方法名(参数列表);
访问父类的构造器, super(参数列表); 只能放在构造器的第一句,只能出现一句
细节
调用父类的构造器的好处(分工明确,父类属性由父类初始化,子类属性由子类初始化)
当子类中有和父类中的成员(属性和方法)重名时,为了访问父类的成员,必须通过super,
如果没有重名,使用super、this、直接访问是一样的效果
super 的访问不限于直接父类,如果爷爷类和本类中有同名的成员,也可以只用super 去访问
爷爷类的成员,如果多个基类(上级类)中都有同名的成员,使用super 访问遵循就近原则
super 和 this 的比较
No. 区别点 this super 1 访问属性 访问本类中的属性,如果本类没有此属性则从父类中继续查找 访问父类中的属性 2 调用方法 访问本类中的方法,如果本类没有此方法则从父类继续查找 直接访问父类中的方法 3 调用构造器 调用本类构造器,必须放在构造器的首行 调用父类构造器,必须放在子类构造器的首行 4 特殊 表示当前对象 子类中访问父类对象
2、包介绍
命名规则:只能包含数字、字母、下划线、小圆点.,但不能用数字开头,不能是关键字或保留字
命名规范:一般是小写字母 + 小圆点 一般是 com.公司名.项目名.业务模块
常用的包:
- java.lang.* //lang包是基本包,默认引入,不需要再引入
- java.util.* //util 包,系统提供的工具包,工具类,使用 Scanner
- java.net.* //网络包,网络开发
- java.awt.* //是做java的界面开发,GUI
如何引入一个包
语法:import 包;
我们引入一个包的主要目的是要使用该包下的类
建议:我们需要使用到哪个类,就导入哪个类即可,不建议使用 *导入
import java.util.Scanner; //表示只会引入java.util 包下的 Scanner
import java.util.*; //表示将java.util 包下的所有类都引入(导入)
package 的作用是声明当前类所在的包,需要放在类的最上面,一个类中最多只有一句 package
import指令 位置放在package的下面,在类定义前面,可以有多句且没有顺序要求
Java SE 6、super关键字,包的更多相关文章
- 安卓里面JSON处理和JAVA SE里面的JSON包
今天编译安卓项目遇到这个问题 com.android.dex.DexException: Multiple dex files define的解决办法 大致意思就是引用了 相同的包 在JAVA SE里 ...
- [Java学习]面向对象-super关键字;final关键字
super关键字 super代表的是当前子类对象中的父类型特征,可以看做是this的一部分.与this不同,不是引用,不存储对象内存地址. super可以用在什么位置 1 可以用在成员方法中.不能用在 ...
- java基础之super关键字
一.在java里面,对于super关键字通常有两种用法: 1. 用在子类的构造方法里(初始化用),主要是调用父类的默认构造方法,如果父类有不止一个构造方法,可以通过super指定具体的构造函数,比如 ...
- Java继承:super关键字、构造器、final用法
一.继承 继承好处 1.提高代码的重用性 2.提高代码的扩展性和维护性 3.为多态打下了基础 继承类型 继承子类创建对象的过程 二.super关键字的使用 理解:super代表父类的引用,用于访问父类 ...
- Java中的super关键字和this关键字作用介绍
一.super关键字的作用 1.子类在构造方法中显示调用父类构造方法 super可以在子类的构造方法中显示调用父类的构造方法:并且这行代码必须出现在子类构造方法的第一行.原因:因为父类构造方法没有执行 ...
- java学习之super关键字
对于具有public或者protected属性的父类,其子类若想继承父亲的属性或者方法,那么需要用到super 实例:
- Java中的super关键字何时使用
子类的构造函数中不是必须使用super,在构造函数中,如果第一行没有写super(),编译器会自动插入.但是如果父类没有不带参数的构造函数,或这个函数被私有化了(用private修饰).此时你必须加入 ...
- Java中关于super关键字的作用
在子类继承父类中,一般有一行super的语句,需要记住三种使用方法: 1.super.变量/对象名: 使用这种方法可以直接访问父类中的变量或对象,进行修改赋值等操作 2.super.方法名(): 直接 ...
- Java基础之this和super关键字用法
this 在java中,this是一个引用当前类对象的引用变量,主要有以下几种用法: 引用当前类的实例变量· this关键字可以用来引用当前类的实例变量.如果实例变量和某个方法的参数之间存在歧义(实例 ...
- Java中super关键字的作用与用法
Java中的super是什么?java中的super关键字是一个引用变量,用于引用父类对象.关键字“super”以继承的概念出现在类中.主要用于以下情况: 1.使用super与变量:当派生类和基类具有 ...
随机推荐
- NC25043 [USACO 2007 Jan S]Protecting the Flowers
NC25043 [USACO 2007 Jan S]Protecting the Flowers 题目 题目描述 Farmer John went to cut some wood and left ...
- 文件的下载,HttpMessageConverter原理
HttpMessageConverter<T> 1) HttpMessageConverter<T> 是 Spring3.0 新添加的一个接口,负责将请求信息转换为一个对象(类 ...
- 对 API 平台的再思考【eolink翻译】
API 是推动现代企业数字化转型的基础.它不但连接了内部应用程序.合作伙伴和客户,同时也快速持续地向市场提供了各种新产品.版本和功能. 但当下还是以集中式的 API 交付为主.一个企业的对外 API ...
- PostgreSQL下的SQL Shell(psql)工具
首发微信公众号:SQL数据库运维 原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485130&idx=1 ...
- 2022-7-15 pan小堂 数组排序算法
二分查找(理解) public ych class{ public static void main(String[] args){ ///运用二分查找需要 数组在的值是递升的 int[] arr1 ...
- python主动杀死线程
简介 在一些项目中,为了防止影响主进程都会在执行一些耗时动作时采取多线程的方式,但是在开启线程后往往我们会需要快速的停止某个线程的动作,因此就需要进行强杀线程,下面将介绍两种杀死线程的方式. 直接强杀 ...
- php和js的不定参
function my_func() { $args = func_get_args(); print_r($args); } my_func('php','java','node.js'); jav ...
- YII学习总结5(视图)
<?php namespace app\controllers; use yii\web\Controller; class HelloController extends Controller ...
- POJ3903Stock Exchange (LIS)
学了下BIT,炸了... #include <iostream> #include <cstdio> #include <cstring> #include < ...
- Taurus.MVC 微服务框架 入门开发教程:项目集成:1、服务端:注册中心、网关(提供可运行程序下载)。
系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单 ...