l类与对象课后作业
java 的初始化规律
执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。
执行类的构造函数。
类的初始化块不接收任何的参数,而且只要一创建类的对象,它们就会被执行。因此,适合于封装那些“对象创建时必须执行的代码”
当多个类之间有继承关系时,创建子类对象会导致父类初始化块的执行。
请自行编写示例代码验证以上结论。
public class InitializeBlockDemo {
/** * @param args */
public static void main(String[] args) {
InitializeBlockClass obj=new InitializeBlockClass();
System.out.println(obj.field);
obj=new InitializeBlockClass(300);
System.out.println(obj.field);
}
}
class InitializeBlockClass{
//下面这句在初始化块之前与之后,会影响到field字段的初始值 //
public int field=100;
{
field=200;
}
public int field=100;
public InitializeBlockClass(int value)
{
this.field=value;
}
public InitializeBlockClass(){
}
}

2请运行TestStaticInitializeBlock.java示例,观察输出结果,总结出“静态初始化块的执行顺序”。
静态初始化块只执行一次。
创建子类型的对象时,也会导致父类型的静态初始化块的执行。
静态方法中只允许访问静态数据,那么,如何在静态方法中访问类的实例成员(即没有附加static关键字的字段或方法)?
请编写代码验证你的想法。(发表到博客)
public class Ex
{ int i =123; static int Temp;
public static void A()
{ System.out.println(Temp);
} public int B()
{ int x = 100;
return x; }
public static void main(String args[]) {
Ex e = new Ex();
Temp = e.B();
e.A();
}
}
1. 父类static(顺序按照代码书写顺序进行)
2. 子类static(顺序按照代码书写顺序进行)
3. 父类非static域、构造器(顺序按照代码书写顺序进行)
4. 子类非static域、构造器(顺序按照代码书写顺序进行)
3
public class StaticTest {
public static void main(String args [])
{
test b=new test(); b.print();
}
}
class test {
int i=1;
static void print()
{
test a=new test();
System.out.println(a.i);
}
}
4
使用类的静态字段和构造函数,我们可以跟踪某个类所创建对象的个数。请写一个类,在任何时候都可以向它查询“你已经创建了多少个对象?”。
public class Student{
public static void main(String[] args){
Information a = new Information();
a.OutputInformation();
Information b = new Information();
b.OutputInformation();
} }
class Information{
static int num=0;
Information()
{ num++;
}
public void OutputInformation()
{
System.out.println("你已经创建了"+num+"个对象!");
}
}


l类与对象课后作业的更多相关文章
- JAVA类和对象课后作业
1.使用类的静态字段和构造函数,我们可以跟踪某个类所创建对象的个数.请写一个类,在任何时候都可以向它查询"你已经创建了多少个对象?" 代码: //显示类 //YiMingLai 2 ...
- 类与对象 CG作业1. 复数类Comple 。
问题描述]一个完整的复数由实数部分和序数部分构成,请定义一个复数类,含有两个私有属性realPart和imagPart分别表示复数的实部和虚部,三个成员函数:initComplex实现复数成员变量的初 ...
- JAVA类与对象作业——动手动脑以及课后实验性问题
一: 1.源代码 //MAO2015.10.6 //foo class Foo { int value; public Foo(int initValue) { value = initValue; ...
- String字符串类课后作业
String动手动脑和课后作业 请运行以下示例代码StringPool.java,查看其输出结果.如何解释这样的输出结果?从中你能总结出什么? 结果: 总结:在Java中,内容相同的字串常量(&quo ...
- JAVA04类与对象之课后问题解决
1.验证ClassAndObjectTest.java(使用自定义类) public class ClassAndObjectTest { public static void main(String ...
- Bag类课后作业
20162316 Bag课后作业 下面小标题都是码云链接 实现代码 import java.util.Arrays; public class Bag implements BagInterface ...
- Java第7次作业:造人类(用private封装,用static关键字自己造重载输出方法)什么是面向对象程序设计?什么是类和对象?什么是无参有参构造方法 ?什么是封装?
什么是面向对象程序设计? 我们称为OOP(Object Oriented Programming) 就是非结构化的程序设计 要使用类和对象的方法来进行编程 什么是类,什么是对象 类就是封装了属性和 ...
- java课后作业
课后作业之字串加密: 设计思想: 1.输入要加密的英文子串str 2.定义num=str的字符串长度 3.将字符串转化为单个字符 4.每个字符+3,向后移3个 5.定义str1,将新得到的每个字符加到 ...
- 类和对象:继承 - 零基础入门学习Python038
类和对象:继承 让编程改变世界 Change the world by program 上节课的课后作业不知道大家完成的怎样?我们试图模拟一个场景,里边有一只乌龟和十条鱼,乌龟通过吃鱼来补充体力,当乌 ...
随机推荐
- [JSOI2008]Blue Mary的职员分配
由于Blue Mary呕心沥血的管理,Blue Mary的网络公司蒸蒸日上.现在一共拥有了n名职员,可惜没有任何的金钱和声誉.平均每名每天职员都可以给公司带来x单位金钱或者y单位声誉(名利不能双全). ...
- 【Linux】Linux系统硬链接和软链接
在linux系统中有种文件是链接文件,可以为解决文件的共享使用.链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(Symbolic Link). 查看lin ...
- ArcGIS for qml - 地址地标转换为经纬度(地理编码)
实现输入地址地标转换为其经纬度 本文链接:地理编码 作者: 狐狸家的鱼 Github: 八至 一.地理编码 1.地理编码含义 地址编码(或地理编码)是使用地址中包含的信息来插入地图上的相应位置的过程. ...
- 前端JS Excel解析导入
本文转载自:https://www.cnblogs.com/yinqingvip/p/6743213.html 需要用到js-xlsx:下载地址:js-xlsx <!DOCTYPE html&g ...
- HTTP属性管理器 初探
1)HTTP Cache Manager 2)HTTP Cookie 管理器 3)HTTP 信息头管理器 4)HTTP 授权管理器 5)HTTP 请求默认值 为什么会有这些http属性的配置元件? ...
- DAY1初识Python----变量及命名规则,注释,数据类型,常量,交互
1.认识和了解python python是一门解释型语言,弱类型语言 2.python发展史 2008年 2.X,3.X 3.第一个python程序 python语句可以写在命令行中,进行编 ...
- 苹果电脑利用curl下载数据集
在看tensorflow书上迁徙学习的这一部分的时候,书上说利用 curl http://download.tensorflow.org/example_images/flower_photos.tg ...
- (replace find)nyoj113-字符串替换
113-字符串替换 内存限制:64MB 时间限制:3000ms 特判: No通过数:171 提交数:388 难度:2 题目描述: 编写一个程序实现将字符串中的所有"you"替换成& ...
- nginx暴露目录文件
location /apk_download { alias /usr/share/nginx/html/; include mime.types; default_type application/ ...
- Redis分布式锁----悲观锁实现,以秒杀系统为例
摘要:本文要实现的是一种使用redis来实现分布式锁. 1.分布式锁 分布式锁在是一种用来安全访问分式式机器上变量的安全方案,一般用在全局id生成,秒杀系统,全局变量共享.分布式事务等.一般会有两种实 ...