面向对象_03【关键字:final使用】
final关键字:可修饰类、变量名和方法
1,final修饰的类不能被继承
2,final修饰的变量(成员、局部)是常量,只能赋值一次。
3,final修饰的方法不能被子类重写
Example:
一:修饰类
//final 修饰类
final class Animal{
}
//Dog继承Animal类
class Dog extends Animal{}
class Example {
public static void main(String[] args) {
Dog p1=new Dog();
}
}

二:成员变量
name未初始化,final关键字修饰未初始化的成员变量,虚拟机不会对其进行初始化
//final 修饰变量(成员变量)
class Student{
final String name;//final修饰name属性
//打印学生方法
public void speak(){
System.out.println("我是一名学生"+name);
}
}
public class Example{
public static void main(String[] args) {
Student stu=new Student();
stu.speak();
}
}

给上诉代码name属性初始化值即可
//final 修饰变量(成员变量)
class Student{
//打印学生方法
public void speak(){
System.out.println("我是一名学生"+name);
}
}
public class Example{
public static void main(String[] args) {
Student stu=new Student();
stu.speak();
}
}

修饰局部变量:
//final 修饰变量(局部变量)
public class Example{
public static void main(String[] args) {
final int num=3;//第一次赋值
num=8;//再次赋值会报错
}
}

三:修饰方法
class Animal{
//final 修饰方法
public final void shout(){
System.out.println("种类"+" "+name);
}
}
//Dog继承Animal类
class Dog extends Animal{
//重写Animal类的shout方法
public void shout(){
System.out.println(name+" "+"动物发出的叫声:旺旺");
}
}
public class Example {
public static void main(String[] args) {
Dog p1=new Dog();
p1.name="小狗";
p1.shout();/*调用的是子类的shout*/
}
}

面向对象_03【关键字:final使用】的更多相关文章
- Java面向对象之关键字final 入门实例
一.基础概念 1.关键字final可以修饰类.函数.变量. 2.关键字final修饰的类不可以被继承. 3.关键字final修饰的方法不可以被覆盖. 4.关键字final修饰的变量是一个常量,只能被赋 ...
- 2017.10.23 Java 面向对象深入学习---final 关键字、static关键字、匿名对象等
今日内容介绍 1.final 关键字 2.static 关键字 3.匿名对象 4.内部类 5.包的声明与访问 6.访问修饰符 7.代码块 第一节课 01(面向对象)final关键字概念.avi 02: ...
- [Java学习]面向对象-super关键字;final关键字
super关键字 super代表的是当前子类对象中的父类型特征,可以看做是this的一部分.与this不同,不是引用,不存储对象内存地址. super可以用在什么位置 1 可以用在成员方法中.不能用在 ...
- Java面向对象重要关键字
面向对象过程接触的重要关键字:extends super this final static extends 关键字用作继承功能,可以申明一个类是从另外一个类继承而来的,一般形式如下 ...
- 10 面向对象(package关键字的概述及作用)
10.01_面向对象(package关键字的概述及作用) A:为什么要有包 *开发时有很多类,如果放在一个文件夹中不方便管理,而且容易重复 将字节码(.class)进行分类存放 包其实就是文件夹 B: ...
- Java基础语法(11)-面向对象之关键字
title: Java基础语法(11)-面向对象之关键字 blog: CSDN data: Java学习路线及视频 1.this this是什么 它在方法内部使用,即这个方法所属对象的引用: clas ...
- Java关键字final、static
一.final根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.你可能出于两种理解而需要阻止改变:设计或效率. final ...
- final关键字(final是最终的)
final关键字(final是最终的) 1.final修饰特点 a.修饰类,类不能被继承 b.修饰变量,变量就变成了常量, 修饰基本数据类:final int num = 10; 修饰引用数据类型变量 ...
- 【转】Java关键字final、static使用总结
转自:http://lavasoft.blog.51cto.com/62575/18771/ Java关键字final.static使用总结 一.final 根据程序上下文环境, ...
- Java关键字final、static使用总结
Java关键字final.static使用总结 一.final 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方 ...
随机推荐
- Phabricator API Go 创建task/提交文件到Phabricator
Go Phabricator API 代码/程序创建task/提交文件到Phabricator Creat Task or upload file to phabricator with code i ...
- TagHelper+Layui封装组件之Radio单选框
TagHelper+Layui封装组件之Radio单选框 标签名称:cl-radio 标签属性: asp-for:绑定的字段,必须指定 asp-items:绑定单选项 类型为:IEnumerable& ...
- HDU2973(威尔逊定理)
YAPTCHA Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total S ...
- Can you find it?(哈希)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2141 Can you find it? Time Limit: 10000/3000 MS (Java ...
- C#中的多线程超时处理实践
最近我正在处理C#中关于timeout行为的一些bug.解决方案非常有意思,所以我在这里分享给广大博友们. 我要处理的是下面这些情况: 我们做了一个应用程序,程序中有这么一个模块,它的功能向用户显示一 ...
- android银行卡匹配、详情展开动画、仿爱奇艺视频拖拽、扫码识别手机号等源码
Android精选源码 android实现银行卡匹配信息源码 android实现可以展开查看详情的卡片 下拉刷新,上拉加载,侧滑显示菜单等效果RefreshSwipeRecyclerview andr ...
- flume1.8 Channel类型介绍(四)
1. Flume Channel Channels是events在agent上进行的存储库.Source添加events,Sink移除events. 1.1 Memory Channel(内存Chan ...
- win7系统如何在防火墙里开放端口
用到的端口需要在防火墙里开放,win7的比XP的要复杂一些,此方法同样适用于server2008系统 方法/步骤 1 依次点击"开始"-"控制面板"-" ...
- 虚拟主机导入MySQL出现Unknown character set: ‘utf8mb4’
http://www.lmlblog.com/14.html 前几天进行网站搬家,MySQL导入数据的时候,出现以下错误(没有定义的编码集utf8mb4): SQL 查询: ; MySQL 返回:文档 ...
- openfire服务器+Spark搭建即时聊天系统 & 阿里云的初步探索
晚上出去和洋仔吃了涮肉,喝了点啤酒,不知不觉就聊到了11点,感觉他工作状态还不错,emmm...都要加油吧.虽然没有当时去山西零下二十多度那么夸张,这几天北京的冬夜还是有点小冷的.好了进入正题: 一. ...