1、开始的唠叨html
有朋友开始接触Java,问我一些基础的问题,忽然发现不知该如何回答,十分尴尬。痛定思痛,便回炉重造,将java基础的知识从新梳理了一遍。java
如下是我看书时或摘要、或总结的语言,彻底是Java中基础的基础。编程
2、学习笔记数组
(一)基本数据类型ide
1.标识符区分大小写:hello与Hello是不一样的标识符。函数
2.基本数据类型的精度由低到高依次为:byte short char int long float double学习
3.格式控制符号:this
%d | int类型 |
%c | char类型 |
%f | 浮点类型 |
%s | 字符类型 |
例如:spa
System.out.println("%d,%f",1,1.23)
4.数组的两种建立方式:设计
Object[] arry=new Object[n]; Object[] arry=new Object[]{x,y,z,..};
(二)表达式
1.switch case语句:case下加break或者加return都是能够的。
2.break与continue:break语句结束整个循环;continue结束当前循环,开始下一次循环。
(三)类与对象
1.多态:Java中多态分两种,重载(Overload)和重写(Override)。
重载:一个类中多个方法具备相同的名字,但方法的参数不一样。
重写:子类从新(覆盖)父类的方法。
2.this关键字:this表示当前对象,在构造方法中表明该构造方法所建立的对象。
3.包与访问权限:
4.反编译与文档生成器:
5.生成jar文件:在Eclipse下,选择File——Export——java——JAR FILE
(四)子类与继承
1.Object类:全部类都继承自Object类,“Class A”原型是“Calss A extends Object”。
2.继承:
(五)面向抽象编程
1.对象的向上转型:上转型对象不能操做子类新增的成员变量与方法
父类 f=new 子类();
2.Open-Closed Principle:系统应当对扩展开放,对修改关闭。(怎么办?面向抽象和接口啊!)
3.面向抽象编程:设计类时,不应让类面向具体的类,而是面向抽象类。
例子:
设计抽象类SIM,以便扩展具体的运营商。
public abstract class SIM { protected String number; protected String type; public abstract void setNumber(String number); public abstract void setType(); public void show(){ System.out.println("类型:"+type+"号码"+number); }
设计手机类,重点是在手机类中添加SIM抽象类,等待子类具体实现。
public class MobliePhone { private SIM sim; public void setSIM(SIM sim){ this.sim=sim; } public void showMessage(){ sim.show(); }
实现两种类型的SIM卡,设为移动和联通。(Type类型能够在构造函数中实现)
public class yidong extends SIM{ @Override public void setNumber(String number) { this.number=number; } @Override public void setType() { this.type="联通"; }
主函数以下,若须要扩展SIM卡,只要继承SIM抽象类便可。如此设计即符合Java开闭原则。
public static void main(String[] args) { MobliePhone mp=new MobliePhone(); SIM sim=new yidong(); sim.setNumber("123456789"); sim.setType(); mp.setSIM(sim); mp.showMessage(); sim=new liantong(); sim.setNumber("987654321"); sim.setType(); mp.setSIM(sim); mp.showMessage(); }
(六)面向接口编程
1.接口:
2.面向接口编程:核心思想是接口回调,与面向抽象编程有必定的类似性。
例子:
设计一个广告的接口。
public interface Advertisement { void showMess(); void showCompany(); }
设计Televison类用于播放广告,重点是设置接口的参数回调。
public class Televison { Advertisement adv; public void setAdv(Advertisement adv){ this.adv=adv; } public void advertise(){ adv.showCompany(); adv.showMess(); }
实现具体的广告类
public class naobaijin implements Advertisement{ @Override public void showMess() { System.out.println("收礼只收脑白金"); } @Override public void showCompany() { System.out.println("白金集团"); }
主函数以下,若须要扩展广告,只要实现Advertisement接口便可。如此设计即符合Java开闭原则。
public static void main(String[] args) { Televison tv=new Televison(); tv.setAdv(new naobaijin()); tv.advertise(); tv.setAdv(new sufei()); tv.advertise(); }
3、结束的唠叨
遗忘是学习的一部分,就代码而言,几个星期不接触就会感到生疏。
以上整理的内容都是我二刷JAVA时以为重要的以及以前遗忘的,再通过选择后发布。不成体系,仅供参考。