第五章 继承(java核心技术)

【CUT&TAG分析-加了spike in的样品】 使用 Bowtie2 或 Subread (subjunc) 来构建大肠杆菌的索引。bowtie2比对时设置参数–local, 局部比对。 阅读详情
  • 5.1.2 覆盖方法**

子类的方法不能直接访问父类的私有域
用关键字super.getsalary()可以调用父类的方法
子类不能删除父类的任何域或者方法
在覆盖超类方法的时候.一定要保证返回类型的兼容性,允许子类将覆盖方法返回类型定义为原返回类型的子类型

** 5.1.3子类构造器**

super(参数)调用父类含有相同参数的构造器,super调用的构造器调用的语句必须位于子类的第一条语句
this(参数)可以用来调用该类的其他构造器,同样必须位于第一构造器的第一条语句

5.1.7阻止继承: final类和方法
表示阻止人们定义器的子类,方法也可以被定义为final,这样做子类就不能覆盖该方法(final类中的所有方法自动成为final方法)

final class excutive extends Manager{}

5.1.9 抽象类

public abstract class Person{
	public abstract String getDescription();

包含一个或多个抽象方法的类必须被声明为抽象的
抽象类也可以包含有具体的方法和数据
抽象类不能被实例化

访问修饰符

  1. 仅对本类可见-----private
  2. 对所有类可见-------public
  3. 对本包和所有子类可见------protected
  4. 对本包可见------默认,不需要修饰符

5.2 泛型数组列表

创建(括号中可以加入存储元素的大小)
在这里插入图片描述
确定存储的元素数量(非必要操作)
在这里插入图片描述

返回元素的数量
在这里插入图片描述
在这里插入图片描述调用后将会将存储区域的大小调整为当前元素数量所需的数目

5.3.1访问数组列表的元素
在这里插入图片描述
在这里插入图片描述
其他的相关操作
在这里插入图片描述5.4对象包装器
由于尖括号中的数据类型不允许使用基本数据类型,这个时候就因该使用对象包装器,所有基本数据类型都有一个对应的包装器

uniapp [全端兼容] - 实现接入使用天地图及卫星视图切换功能,在国家天地图上自由切换地图显示类型(卫星视图/地形视图/卫星混合/地形混合/普通视图)天地图切换视图显示改成卫星风格,切换地图图层 uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,天地图,视图,卫星,地图类型切换,uniAPP天地图,改成卫星视角,在线地图切换,来回切换卫星图,天地图如何实现来回切换卫星图,地形图,卫星视图,VUE3引入天地图卫星版,详细教程示例源码代码,天地图切换卫星用什么api,卫星视角API方法,vue3卫星天地图,能改地图的显示方式,vue3中使用天地图自定义样式切换地图图层,切换报错,加载出错,卫星图太卡,地图图层更换,vue3安装集成天地图详细示例源 阅读详情

相关推荐

UE5 Decal混合进阶:如何用DBuffer实现自定义Normal插值(附完整材质配置流程)

本文深入解析了UE5中利用DBuffer技术实现Decal自定义Normal插值的完整流程。通过详细的材质配置步骤和核心算法说明,帮助开发者突破传统混合模式限制,掌握高级法线控制技巧,特别适合需要精细环境细节的3A级项目开发。

table的专栏 224

java里super用法_Java中super和this的用法及区别

Java super和this的对比及使用Java super和this的对比及使用super和this的异同1)super(参数列表):调用父类中的某一个构造函数(应该为构造函数中的第一条语句)this(参数列表):调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句)2)super: 它引用当前对象的直接父类中的成员(用来访问直接父类中被隐藏的父类中成员数据或函数,基类与派生类中有相同...

weixin_34928522的博客 348

拖动无标题栏的cef3窗口

拖动嵌入了cef3的无标题栏win32窗口,本质上就是拖动子窗口移动父窗口这么个事情,这个在自己创建窗口的程序上处理非常简单,cef封装较多,想修改的完善点步骤较多。         cef所用版本3.2623。         就用cefclient来做测试工程,首先建议在cefclient_win.cc的RunMain函数中的app = new ClientAppRenderer();前面

loveyong1990的专栏 6160

java学习(十一)super

java学习(十一)super super 和 this 可以对比着学习: this this 是一个引用,保存内存地址指向自己。 this 出现在实例方法中,谁调用这个实例方法,this 就代表谁,this 代表当前正 在执行这个动作的对象。 this 不能出现在静态方法中。 this 大部分情况下可以省略,在方法中区分实例变量和局部变量的时候不能省 略。  “this(实际参数列表)”出现在构造方法第一行,通过当前的构造方法去调用 本类当中其它的构造方法。

python_nice的博客 204

深入解析Incapsula reese84的生成机制与绕过策略

本文深入解析了Incapsula reese84的生成机制与绕过策略。reese84是一种基于客户端JavaScript挑战的Web安全防护,通过动态算法收集浏览器指纹并生成令牌Cookie。文章详细拆解了其两步验证流程,并提供了使用无头浏览器、逆向JS模拟请求以及Token维护等实战绕过方法,帮助开发者和安全研究人员应对自动化访问拦截。

weixin_29256771的博客 443

【Python】-- 趣味代码 - 发牌游戏

Python -- 趣味代码 - 发牌游戏

银尘博客 351

Java第08章-继承

比如可以先定义一个类叫车,车有以下属性:车体大小,颜色,方向盘,轮胎,而又由车这个类派生出轿车和卡车两个类,为轿车添加一个小后备箱,而为卡车添加一个大货箱。父类也可成为超类(super class)或者基类(base class),派生出来的类成为子类或者派生类,子类可以继承父类的所有成员变量和方法。继承是面向对象最显著的特征之一。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。类,Object类是所有类的公共祖先,即所有java类都是Object类的子孙类。

luckyboy!的博客 362

将指定文件夹下每张用LabelImg标注的图片中标注部分抠出来保存到指定文件夹下。

将指定文件夹下每张用LabelImg标注的图片中标注部分抠出来保存到指定文件夹下。

weixin_44119674的博客 440

java基础-super(实参)的用法-子类调用父类的构造方法

/* 举个例子:在恰当的时间使用:super(实际参数列表) */ //测试程序 public class SuperTest03{ public static void main(String[] args){ } } //账户 class Account{ private String actno; private double balance; //构造方法 public Account(){ } public Account(String actno,double bal

qq_36697196的博客 4001

2026年北京君正数字IC笔试试卷带答案

本文摘要:该文档是一份数字IC设计相关的考试试题,包含单选题、多选题、波形分析题和代码设计题。内容涵盖时序约束、半导体工艺、状态机设计、逻辑综合、异步FIFO设计等知识点。试题解析详细,重点考察数字电路基础、时序分析和Verilog代码实现能力。典型题目包括多周期路径设置、Moore/Mealy状态机区别、同步复位与异步复位特性、RISC-V架构特点等,并提供了异步FIFO的Verilog实现参考代码。(149字)

Open 112

WPF进阶 | 深入 WPF 依赖项属性:理解其强大功能与应用场景

WPF进阶 | 深入 WPF 依赖项属性:理解其强大功能与应用场景,在 Windows Presentation Foundation(WPF)开发中,依赖项属性是一个核心且强大的特性,它为构建灵活、可扩展的用户界面提供了关键支持。理解并熟练运用依赖项属性,对于开发高效、健壮的 WPF 应用程序至关重要。本文将深入探讨 WPF 依赖项属性,通过丰富的代码示例和对关键概念的详细解释,帮助读者全面掌握这一重要特性及其应用场景。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 4万+

《Java核心技术 卷1》 第五章 继承

《Java核心技术 卷1》 第五章

Ihch17的博客 257

Python爬虫技术:使用Playwright和Twitter API v2高效获取Twitter/X数据完全教程

遵守规则:始终遵循Twitter的使用条款和速率限制错误处理:实现完善的错误处理和重试机制数据质量:进行数据清洗和验证性能优化:使用异步处理和合理的延迟设置可维护性:模块化代码,便于维护和扩展。

2201_76125261的博客 671

《JAVA核心技术卷》第五章 继承

《JAVA核心技术卷》第五章 继承 5.1 类、超类和子类5.1.1 定义子类5.1.2 覆盖方法5.1.3 子类构造器多态5.1.4 继承层次5.1.5 多态5.1.6 理解方法调用5.1.7 阻止继承:final类和方法5.1.8 强制类型转换5.1.9 抽象类5.1.10 受保护访问5.2 所有类的超类5.2.1 equals方法5.2.2 相等测试与继承 5.1 类、超类和子类 5.1.1 定义子类 关键字extends表示继承,表明正在构造的新类派生于一个已存在的类。已经存在的类称为超类、基类或父

qq_45580956的博客 268

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

《Java 核心技术 卷1》 笔记 第五章 继承

继承与多态

yu_duan_hun的博客 879

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Java核心技术 第五章 继承

继承的基本思想是可以基于已有的类创建新的类; 反射是指在程序运行期间更多的了解类及其属性的能力; 5.1 类,超类和子类 is-a关系是继承的一个明显特征; 关键字extends表示继承; public class Manager extends Employee { added methods and fields } Java中所有的继承都是公共继承; 可以使用super关键字调用超类方法; 由于子类不能访问超类的私有字段,但可以通过特殊语法super()来调用构造器初始化这些私有字段,su

lukaijie‘s BLOG 460

Java核心技术 第五章 继承

类、超类、子类: 子类方法不能直接访问超类的私有域。 this和super并非引用,不能将其赋给另一个对象变量。 super在构造器中的应用: public Manager(String n, double s, int year, int month, int day ) {   super(n, s, year, month, day) ;   bonus = 0 ; ...

199

Java核心技术第五章——继承

一个对象变量(例如, 变量e ) 可以指示多种实际类型的现象被称为多态 在运行时能够自动地选择调用哪个方法的现象称为动态绑定 当一个类被声明为final,表示这个类不允许被继承,这个类的方法默认都为final,但是数据域不默认为final。 只要有一个抽象方法,这个类就是抽象类,抽象类不能创建实例对象 public boolean equals(Object otherObject) { //...

RoadSon的博客 237

JAVA核心技术 卷1 第五章 继承

继承类,超类和子类 类,超类和子类 例如:员工,和经理,待遇肯定存在一些差异,但是经理也是员工,也会有很多和员工相同的动作。 比如,领取工资,但是经理之后还完成预期业绩的奖金。 1)以上这种情况,经理类就可以继承员工类,再员工类的基础上进行扩展。 2)经理是员工,是典型的is-a的关系,这也是继承的一个明显特征。 定义子类 继承使用extends 如下例子1 public class Manag...

azto的博客 528

[Java学习笔记] Java核心技术 卷1 第五章 继承

第5章 继承 利用继承,可以基于已存在的类构造一个新类。继承已存在的类就是复用(继承)这些类的方法和域。还可以在此基础上添加新的方法和域。 反射。 5.1 超类子类 使用extends构造一个派生类 class Manager extends Employee { 添加方法和域 覆盖:重写一些基类中不适合派生类的方法 } 所有的继承都是公有继...

anbanxiu3636的博客 226

《Java核心技术》第五章 继承 学习笔记

第5章 继承 本章将学习面向对象程序设计的另外一个基本概念:继承(inheritance)。 利用继承,人们可以基于已存在的类构造一个新类。继承已存在的类就是复用(继承)这些类的方法和域。在此基础上,还可以添加一些新的方法和域,以满足新的需求。这是Java程序设计中的一项核心技术。 另外,本章还阐述了反射(reflection)的概念。反射是指在程序运行期间发现更多的类及其属性的能力。这是一个功能强大的特性,使用起来也比较复杂。 5.1 类、超类和子类 5.1.1 定义子类 下面是由继承Employee类来

兰陵鸡王的博客 272

Java核心技术卷1 第五章 继承

Java核心技术卷1 第五章笔记

GongZheng321的博客 344

《Java核心技术 卷Ⅰ 》第五章笔记——继承

继承的基本概念 1.继承的基本思想是基于已有的类创造新的类。 2.反射是指在程序运行期间更多地了解类及其属性的能力。 3.关键字extend表示正在构造的新类派生于一个已存在的类,用法如下: public class A { // methods and fields } public class B extends A { // added methods and fields } 其中,这个已经存在的类成为超类、基类或父类,新类成为子类、派生类或孩子类。常用的名词为超类和子

x568059888的博客 276

Java核心技术卷Ⅰ第五章继承

继承

weixin_53903995的博客 169

【Java核心技术卷I笔记】 第五章 继承

Java核心技术卷I笔记 第五章 继承

sybBlog 160

java核心技术 第五章 继承

一、类、超类、和子类 相对于Employee,Manager完成业务后有奖金。这种情况下使用继承。 class Manager extends Employee{ } 在Manager类中,增加了一个用于存储奖金信息的域,以及用于设置这个域的方法。 public class Manager extends Employee { private double bonus; ...

七月冷雨 571

Java 核心技术 卷I - 第五章 类的继承

Java 核心技术 卷I - 第五章 类的继承 子类 子类中可以添加属于子类自己的实例域,方法,或者对父类方法进行覆盖 子类无法直接访问属于父类的private实例域,必须通过super关键字和公有接口实现 在子类构造器中使用super调用父类构造器,对父类实例域进行初始化 如果子类构造器没有显式调用父类的构造器,则将自动调用父类的默认构造器;如果父类没有不带参数的构造器,则会报告错误 父类...

seayoung的博客 226
上一篇: 第四章 对象和类(java核心技术)
下一篇: 第4章 控制执行流程(java编程思想)
printf_myself
博客等级 码龄7年 1粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值