JAVA基础知识总结:九
二。面向对象特性之继承
1.什么是继承?
如果两个或者两个以上的类具有相同的属性和方法,我们可以抽取一个类出来,在抽取出来的类中声明各个类中公共的部分
被抽取出来的类-------父类,基类,超类
两个或者两个以上的类-----子类,派生类
二者之间的关系:子类 继承自 父类(基类)
2,语法
访问权限修饰符 class 子类类名 extends 父类类名 {
}
a.当子类继承自父类的时候,子类对象可以访问父类中的成员变量
b.子类同样可以调用父类中的方法
c.一个父类,可以有多个对应的子类
d.一个子类,只能有一个父类(单继承)
3.super
this是对当前对象的引用
super是对父类对象的引用
1》super.属性:访问父类中的成员变量
2》super.方法:访问的是父类中的方法
3》super():访问的是父类的构造方法
注意:a.super()必须出现在子类构造方法的第一行语句
b.super()具体调用的是父类中的哪个构造方法,取决于所传的参数
二、访问权限修饰符
1.访问权限修饰符:public\private\protected\default
2.default:如果没有添加访问权限修饰符的话,其实就是default权限(注意:default一定不能写出来)
3.修饰类:类的访问权限修饰符只有两个:public和default
访问权限修饰符 同包 不同包
public 可以 可以
default 可以 不可以
说明:
public修饰的类在不同包下可以访问,但是需要注意:
a.进行导包(需要使用类的全限定名,例如:包名.包名.类名;import com.b.Student;)
b.如果在不同包中有相同名字的类,在使用的时候一定要注意使用类的全限定名
4.修饰属性:四个访问权限修饰符都能用
权限大小:public>protected>default>private
访问权限修饰符 本类 同包不同类 子类(不同包) 不同包
private 可以 不可以 不可以 不可以
default 可以 可以 不可以 不可以
protected 可以 可以 可以 不可以
public 可以 可以 可以 可以
三、方法重写
1.重写规则
在具有继承关系的两个类中,子类中的方法如果满足了以下条件,就说子类重写了父类的方法
a.方法名相同
b.参数相同
c.子类方法的返回值类型必须和父类方法的返回值类型相同,或者是父类方法返回值类型的子类型
d.子类方法的访问权限必须大于等于父类方法的访问权限
2.final关键字
1》final修饰类:这个类不能被继承
2》final修饰方法:这个方法不能被重写
3》final修饰变量
当final修饰一个成员变量的时候,系统不会再给这个成员变量赋初始值,所以在使用之前需要我们手动进行初始化
静态成员变量:在声明变量的时候或者在静态代码块中进行初始化
非静态成员变量:在声明变量的时候或者构造代码块中或者构造方法中直接初始化
局部变量:
注意:final修饰基本数据类型和引用数据类型的区别?
当final修饰基本数据类型的时候,不能再对基本数据类型变量进行赋值
当final修饰引用数据类型的时候,引用类型变量不能再被重新赋值,但是可以改变引用变量所指向的内容
总结:a.final和访问权限修饰符没有关系,是相互独立的
b.对于基本数据类型变量,命名字母全部大写,不同单词之间使用下划线进行分隔
c.对于引用数据类型变量,命名不需要遵循常量命名规范
四、Object类
是Java中所有类的父类,在其中定义了一些常用的方法
1》toString()
2>getClass()
3>hashCode()
4>equals()
JAVA基础知识总结:九的更多相关文章
- Java基础知识陷阱(九)
本文发表于本人博客. 今天我来说说关于JAVA多线程知识,有错误请指出.大家都知道JAVA在服务端上处理也有很大优势,很多公司也有在服务器跑JAVA进程,这说明JAVA在处理这个多线程以及并发下也有一 ...
- JAVA基础知识(九)Java 异常
Throwable是Error和Exception的基类 Exception(异常) :是程序本身可以处理的异常. Error(错误): 是程序无法处理的错误.这些错误表示故障发生于虚拟机自身.或者发 ...
- Java基础知识陷阱系列
Java基础知识陷阱系列 今天抽空把Java基础知识陷阱有关的文章汇总于此,便于大家查看. Java基础知识陷阱(一) Java基础知识陷阱(二) Java基础知识陷阱(三) Java基础知识陷阱(四 ...
- 第二十九节:Java基础知识-类,多态,Object,数组和字符串
前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,Object,数组,多维数组,字符串,字符串比较. 回顾 类的定义格式: [类的修饰符] ...
- java基础知识文章汇总
将之前的所有关于Java基础知识的随笔,整理成质量较高的十几篇随笔,几乎是好几篇比较零散的随笔合成现在的一篇,自认为还不错. java基础(一) 深入解析基本类型 java基础(二) 自增自减与贪心规 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- Java基础知识系列——String
最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...
- 学习android学习必备的java基础知识--四大内部类
学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...
- JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)
本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...
随机推荐
- **********MySql查询方法重要**********
分析问题要分步,查询每一步的结果,最后连起来 例如下面有四张表让你查询 查询选修“3-105”课程的成绩高于“109”号同学成绩的所有同学的记录. 第一部,找到课程编号为3-105的记录中学号为109 ...
- Java:双括号初始化 /匿名内部类初始化法
偶然见到一种初始化方式,感到十分新奇: //新建一个列表并赋初值A.B.C ArrayList<String> list = new ArrayList<String>() { ...
- Hibernate的注解方法的使用
1.配置映射关系的xml方式 我们知道,Hibernate是一个典型的ORM框架,用以解决对象和关系的不匹配.其思想就是将关系数据库中表的记录映射成为对象,以对象形式展现,这样一来,就可以把对数据库的 ...
- webservice04#对象与xml转换-jaxb#Stax解析xml#新建修改xml
1,Student类 package com.yangw.xml; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement / ...
- mybatis-generato的功能扩展
项目代码地址:https://github.com/whaiming/java-generator 我在原有的基础上扩展了和修改了一些功能: 1.增加获取sqlServer数据库字段注释功能 2.Ma ...
- EntityFramework 6.x多个上下文迁移实现分布式事务
前言 自从项目上了.NET Core平台用上了EntityFramework Core就再没碰过EntityFramework 6.x版本,目前而言EntityFramework 6.x是用的最多,无 ...
- IOS SDWebImage实现基本原理详解(转载)
1)当我门需要获取网络图片的时候,我们首先需要的便是URl没有URl什么都没有,获得URL后我们SDWebImage实现的并不是直接去请求网路,而是检查图片缓存中有没有和URl相关的图片,如果有则直接 ...
- Dubbo与Zookeeper、SpringMVC整合和使用
作为dubbo框架初学者,能让框架跑起来非常不容易,非常感谢网上诸多大神提供的文章,本人参考文章地址是:https://my.oschina.net/xshuai/blog/891281 不过别人的记 ...
- Writing Science 7.10 (The Opening and The Funnel)
Opening: 1.文章的第一句话必须要达到如下目标:找出推动研究的问题,介绍内容,并确定本文针对的观众.如果你足够聪明的话甚至可以将遇到的挑战以及结论写进来. 2.通过第一段话建立本文的重点和基调 ...
- 【Python练习1】统计一串字符中英文字母、空格、数字和其他字符的个数
练习思路: 1.输入一串字符 2.筛选出字符中的英文字母并统计 3.筛选出字符中的空格并统计 4.筛选出字符中的数字并统计 5.筛选出字符中的其他字符并统计 代码实现: def msg(s): abc ...