一.继承条件下的构造方法调用 运行 TestInherits.java 示例,观察输出,注意总结父类与子类之间构造方法的调用关系修改Parent构造方法的代码,显式调用GrandParent的另一个构造函数,注意这句调用代码是否是第一句,影响重大! 1)  源代码 class Grandparent { public Grandparent() { System.out.println("GrandParent Created."); } public Grandparent(Stri…
1.  阅读以下代码(CatchWho.java),写出程序运行结果: 1)  源代码 public class CatchWho { public static void main(String[] args) { try { try { throw new ArrayIndexOutOfBoundsException(); } catch(ArrayIndexOutOfBoundsException e) { System.out.println(  "ArrayIndexOutOfBoun…
一: 1.源代码 //MAO2015.10.6 //foo class Foo { int value; public Foo(int initValue) { value = initValue; } } public class Test2 { public static void main(String[] args) { Foo obj1 = new Foo(2); } } 2.截图 3.总结 如果一个类提供自定义的构造方法,导致系统不再提供默认构造方法. 二: 1.源代码 //mao2…
JAVA课后作业——动手动脑 一:阅读并运行示例PassArray.java,观察并分析程序输出的结果,小结,然后与下页幻灯片所讲的内容进行对照. 1.源代码 // PassArray.java // Passing arrays and individual array elements to methods //引用传递和按值传递 public class PassArray { public static void main(String[] args) { int a[] = { 1,…
一.动手动脑 运行AboutException.java示例,了解Java中实现异常处理的基础知识. 1)源代码 import javax.swing.*; class AboutException { public static void main(String[] a) { double i=-1, j=0, k; k=i/j; try { k = i/j; // Causes division-by-zero exception //throw new Exception("Hello.E…
一:如何解释这样的输出结果?从中你能总结出什么?1.源码 //mao2015.10.20 //==的两个分辨 //对原始数据而言 //对引用类型变量 public class StringPool { public static void main(String args[]) { /*String s0="Hello"; String s1="Hello"; String s2="He"+"llo"; System.out.…
1>继承条件下的构造方法调用 运行 TestInherits.java 示例,观察输出,注意总结父类与子类之间构造方法的调用关系修改 Parent 构造方法的代码,显式调用 GrandParent 的另一个构造函数,注意这句调用代码是否是第一句,影响重大 源代码: class Grandparent{ public Grandparent(){ System.out.println("GrandParent Created."); } public Grandparent(Str…
动手动脑:请自行编写代码测试以下特性:在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. 1.源代码: package Work; class A{ public A(){ System.out.println("Class A."); } public A(String string){ System.out.println("Class A."+string); }} class B extends A{ public B(){ super(&qu…
为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来? 因为子类继承了父类,那么就默认的含有父类的公共成员方法和公共成员变量,这些方法和变量在子类里不再重复声明.如果初始化子类的时候,不初始化父类,那么通过子类调用父类方法或变量的时候会出现什么情况呢?当然就是抛异常阿!所以,Java虚拟机会在初始化子类的时候默认的初始化子类的父类.而且是一层一层的往上递进!…
java上课知识整理总结(动手动脑,课后实验) 一,课堂测试 1,题目:课堂测试:像二柱子那样,花二十分钟写一个能自动生成30道小学四则运算题目的 “软件” 要求:(1)题目避免重复: (2)可定制(数量/打印方式): 2,设计思路 1),产生两个1-100的随机数作为题目参与运算的数据,产生一个1-100的随机数并对4求余作为运算符(0:‘+’,1:‘-’,2:‘*’,3:‘/’). 2),用for循环控制出题个数n,用循环变量i对一行出题个数m求余,余数为0换行控制一行中题目的个数. 3),…
1.请运行以下示例代码StringPool.java,查看其输出结果.如何解释这样的输出结果?从中你能总结出什么? true true false 总结: 使用new关键字创建字符串对象时, 每次申请新开辟一个地址空间,存储的地址空间不一样(对象不同),string类型下hello是同一个对象,其内容和地址都相容. 2. public class StringEquals { /** * @param args the command line arguments */ public stati…
接口是常量值和方法定义的集合.接口是一种特殊的抽象类.   java类是单继承的.classB Extends classA java接口可以多继承.Interface3 Extends Interface0, Interface1, interface……     不允许类多重继承的主要原因是,如果A同时继承B和C,而b和c同时有一个D方法,A如何决定该继承那一个呢? 但接口不存在这样的问题,接口全都是抽象方法继承谁都无所谓,所以接口可以继承多个接口.     注意:     1)一个类如果实…
按照理解,一般都是说Java 类是单继承,但可以实现多个接口.但是可以通过接口来实现类的多继承.(如何通过接口来实现多继承???) 那么就一直以为Java里面是单继承,今天看FutureTask源码的时候发现,接口居然可以实现多继承,通过下面例子学习下. 一个类只能extends一个父类,但可以implements多个接口.java通过使用接口的概念来取代C++中多继承.与此同时,一个接口则可以同时extends多个接口,却不能implements任何接口.因而,Java中的接口是支持多继承的.…
复习 20190701 接口补充 一. java是单继承多实现 单继承: 一个类只能有一个父类 public class D extends D1 { } 2. 多实现 一个类可以同时实现多个接口 当一个类同时实现多个接口时,它需要同时实现这些接口中声明的所有抽象方法 package day; public class Demo1 {public interface A { void fun1();}public interface B { void fun2();}public class A…
  动手动脑一:枚举   输出结果: false false true SMALL MEDIUM LARGE 分析和总结用法 枚举类型的使用是借助ENUM这样一个类,这个类是JAVA枚举类型的公共基本类.枚举目的就是要让某个变量的取值只能为若干固定值中的一个. 1.Size s=Size.SMALL; 对s变量进行赋值,只能给已经定义好的常量(即SMALL,MEDIUM,LARGE中的其中一个). 2.System.out.println(s==t); 判断s是否与t相同. 3.System.o…
1.完全"手写代码实现"随机数生成 动手动脑: 编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数. Modulus=231-1=int.MaxValue Multiplier=75=16807 C=0 当显示过231-2个数之后,才可能重复. 编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数. public class suiji { private static final int N = 200; private static final int…
随机数: 1)编写一个方法,使用以下算法生成指定数目(比如1000个)的随机整数. Modulus=231-1=int.MaxValue Multiplier=75=16807 C=0 当显示过231-2个数之后,才可能重复. 程序: import java.util.Scanner; public class Random { public static void main(String[] args) { // TODO Auto-generated method stub System.o…
1.查看其输出结果.如何解释这样的输出结果?从中你能总结出什么? 运行结果 true true false 原因 1)在Java中,内容相同的字串常量(“Hello”)只保存一份以节约内存,所以s0,s1,s2实际上引用的是同一个对象. 2)编译器在编译s2一句时,会去掉“+”号,直接把两个字串连接起来得一个字串(“Hello”).这种优化工作由Java编译器自动完成. 3)当直接使用new关键字创建字符串对象时,虽然值一致(都是“Hello”),但仍然是两个独立的对象. 为什么会有上述的输出结…
一.继承条件下的构造方法调用 运行 TestInherits.java 示例,观察输出,注意总结父类与子类之间构造方法的调用关系修改Parent构造方法的代码,显式调用GrandParent的另一个构造函数,注意这句调用代码是否是第一句,影响重大! 1)  源代码 class Grandparent { public Grandparent() { System.out.println("GrandParent Created."); } public Grandparent(Stri…
在Java中,我们可以通过组合一私有字段和一对get/set方法来定义一个属性.私有的变量,共有的方法. package sample; /** * 自定义Java类的示例 */ class MyClass { // 公有字段 public String Information = ""; // 自定义公有Java实例方法 public void myMethod(String argu) { System.out.println(argu); } // 定义属性:私有字段+get方法…
一.继承条件下的构造方法调用 class Grandparent { public Grandparent() { System.out.println("GrandParent Created."); } public Grandparent(String string) { System.out.println("GrandParent Created.String:" + string); } } class Parent extends Grandparen…
1.以下代码的输出结果是什么?为什么会有这个结果? int[] a = { 5, 7, 20 }; System.out.println("a数组中的元素:"); // 循环输出a数组的元素 for (int i = 0; i < a.length; i++) { System.out.print(a[i] + ","); } // 定义并初始化数组b,使用动态初始化 int[] b = new int[4]; // 输出b数组的长度 System.out.p…
class Grandparent { public Grandparent() { System.out.println("GrandParent Created."); } public Grandparent(String string) { System.out.println("GrandParent Created.String:" + string); }} class Parent extends Grandparent { public Paren…
1. 以下代码为何无法通过编译?哪儿出错了? 如果类提供了一个自定义的构造方法,将导致系统不再提供默认构造方法.而此时程序中已提供了一个有一个参数的构造函数,而定义对象时却没有参数,所以程序会报错. 2. 请依据代码的输出结果,自行总结Java字段初始化的规律 Java进行初始化的地方有两个:初始化块和构造函数.由上面两图中可以发现,Java字段初始化规律系统会按顺序对Java字段进行初始化,如果有好几个方法都对同一个变量进行了初始化.Java会将最后一次的初始化结果赋给该变量. 如果在主函数中…
一.编写一个方法,使用纯随机数生成算法生成指定数目(比如1000个)的随机整数. 1.程序源代码 import java.util.Scanner; import java.util.Random; public class RandomInt { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("请输入想要生成的…
在看API文档时,突然发现一个接口可以是其他接口的子接口,这说明接口之间会存在继承的关系.查找了相关的资料,做一个总结. 是继承还是实现 首先要搞清楚接口之间的关系使用的关键字是extends还是implement.网友有如下回答: 一个类只能extends一个父类,但可以implements多个接口.java通过使用接口的概念来取代C++中多继承.与此同时,一个接口则可以同时extends多个接口,却不能implements任何接口.因而,Java中的接口是支持多继承的. 自己动手验证了一下:…
父类 public class person { String name; int age; void eat(){ System.out.println("吃饭"); } void introduce(){ System.out.println("我的名字是"+name +",我的年龄是"+age); } } 子类 public class testper extends person { int grade; void study(){ Sy…
动手动脑及课后实 仔细阅读示例: EnumTest.java,运行它,分析运行结果? public class EnumTest { public static void main(String[] args) { Size s=Size.SMALL; Size t=Size.LARGE; //s和t引用同一个对象? System.out.println(s==t);  // //是原始数据类型吗? System.out.println(s.getClass().isPrimitive());…
目录 Java接口示例 实现一个接口 接口实例 实现多个接口 方法签名重叠 接口变量 接口方法 接口默认方法 接口与继承 继承与默认方法 接口与多态性 在Java中,接口是一个抽象类型,有点类似于类,但Java接口只能包含方法签名与属性,不能包含括方法的实现. Java接口示例 public interface MyInterface { public String hello = "hello"; public void sayHello(); } 如上所示,java接口是使用关键词…
Java动手动脑——继承和多态 实验一 预估输出答案:100  200  201  202 输出结果:100  200  201  202 输出答案分析:100 创建parent类的对象,调用对象的方法 200 创建chlid类的对象,调用对象的方法 把child对象赋值给parent,输出child对象的值 强制转换parent为Child对象,输出 实验二 在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. public class food { int x; public f…