1. 引言 实现阶乘的方法很多,这边介绍四种方法,分别是递归,尾递归,循环和BigDecimal. 2. 代码 public class Test { public static void main(String[] args) { // TODO Auto-generated method stub Alogrithm a = new Alogrithm1(); a.fact(5); a.print(a.factN(6)); a.print(a.factFor(7)); } } class A…
内部类Inner Class 将相关的类组织在一起,从而降低了命名空间的混乱. 一个内部类可以定义在另一个类里,可以定义在函数里,甚至可以作为一个表达式的一部分. Java中的内部类共分为四种: 静态内部类static inner class (also called nested class) 成员内部类member inner class 局部内部类local inner class 匿名内部类anonymous inner class 静态内部类Static Inner Class 最简单…
1     概念定义 1.1   定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 1.2   类型 创建类模式 2     原理特征 2.1   类图 2.2   优点 1)封装性良好,代码结构清晰 2)可拓展性高,只需修改一下工厂方法或拓展一个工厂类 3)屏蔽产品类,调用者不需要关心产品类的变化 4)高度解耦,高层模块只需知道产品抽象类,无需关注实现 2.3   缺点 代码复杂度增加 3     .应用拓展 3.1   应用场景 1)    …
实例 直接三角形,通过两边算第三边,目的是为了如何使用这几种方法引用.代码中多有些不合适,尽情原谅. 静态方法引用 接口的参数列表与类中的具体实现方法的参数列表一样,返回值一致. 调用 //静态引用 IStaticSide staticSide = Five::getStaticSize; staticSide.getStaticSize(3, 6); 类中定义 //静态引用 public static double getStaticSize(double s,double s2) { ret…
一.哪些方法不能被重写? 1.final 修饰的不能重写 2.static 修饰的不能重写 3.private 修饰的,因为私有的在子类中不可见 4.如果跨包的话,修饰符缺省的也不能被重写,因为缺省的跨包不可见 二.修饰符 1.修饰外部类 权限修饰符:public 和 缺省的 其他修饰符:final 2.方法 权限修饰符:四种 其他修饰符:final.static.native 3.成员变量 权限修饰符:四种 其他修饰符:final.static 4.代码块 修饰符:static 或 没有 三.…
方法的定义  package oop.demon01; ​ //Demon01 类 public class Demon01 {          //main 方法     public static void main(String[] args) {             }     /*     修饰符 返回类型 方法名(....){         //方法体         return 返回值;     }         如果返回值是 void ----- return ; (…
/* Name : Power by :Stuart Date:2015.4.25 */ class PassOn{ //创建show方法,把i传入,输出i+1的结果 public void show(int i){ i=i+1; System.out.println(i); } } public class PassWayTest{ public static void main(String args[]){ //基本类型局部变量 int size =100; //打印出局部变量的值 Sys…
 Java面向对象  IO  (四) 知识概要:                 (1)打印流 (2)序列流 SequenceInputStream (3)ObjectInputStream与ObjectOutputStream (4)RandomAccessFile (5)DataInputStream与DataOutputStream (6)ByteArrayInputStream (7)字符编码 IO包中的其他类 打印流: 该流提供了打印方法,可以将各种数据类型的数据都原样打印. 字节…
面向对象编程(Object Oriented Programming,OOP)是一种计算机模拟人类的自然思维方式的编程架构技术,解决了传统结构化开发方法中客观世界描述工具与软件结构的不一致性问题.Java是一种纯面向对象的语言,与C语言不一样他是面向过程的语言.通俗说Java程序主要是由类组成的,而C是由函数组成的. 面向对象非常重要,恰当的使用面向对象会使我们开发的系统拥有“可复用”.“可扩展”.“可维护”的特点.面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统.交互式界面.…
一.学习要点 认真看书并查阅相关资料,掌握以下内容: 掌握类的继承概念和设计 掌握构造方法的继承原则 掌握方法重写 掌握super键字和final关键字 理解多态的概念,掌握通过方法重写和方法重载机制实现多态 掌握对象转型,掌握通过向上转型实现对象多态. 掌握简单抽象类的设计 二.作业要求 发布一篇随笔,主要包括以下几部分的内容: (一)学习总结 1.学习使用思维导图对Java面向对象编程的知识点(封装.继承和多态)进行总结. 参考资料: XMind 2.阅读下面程序,分析是否能编译通过?如果不…