JAVA阶段简要总结(部分)

1.JDK下载安装及其环境配置

我最开始是在官网上下载配置的是最新版jdk1.13,但是低版本的更稳定些,于是我换成了jdk1.8,又重新配置了环境。下面是我配置环境所用方法的链接:

Win10下配置Java 环境变量 - 我是李密 - 博客园 https://www.cnblogs.com/limi2019/articles/11062385.html

2.记事本编写简单代码及DOS窗口运行

注意:javac  *.java  编译                  java *    运行

3.eclipse使用

4.java语法基础

(1)关键字(2)标识符 (3)常量(4)变量 4类

数据类型:

基本数据类型:1、整型 byte 、short 、int 、long  2、浮点型 float 、 double 3、字符型 char 4、布尔型 boolean

引用数据类型: 数组、类、接口。

自动类型转换从低级别到高级别,自动转换;

强制类型转换把一个高级别的数赋给一个比该数的级别低的变量;

输入数据

(1)io流的BufferedReader  输入的皆视为字符串 需转换

(2)调用Scanner类方法   

运算符及表达式  注意:优先级

小习题:交换a,b

int a  = 3,b = 5;-->b = 3,a = 5;

a = a + b; a = 8;

b = a - b; b = 3;

a = a - b; a = 5;

a = a ^ b;

b = a ^ b;

a = a ^ b;

2*8 =2*2^3= 2<<3;

流程控制

if...else...    if...else if...else    if嵌套

switch选择

循环 while语句 do-while语句 for语句    多重循环  嵌套

跳转break    contine    return

数组

声明数组 创建空间    一维数组如下:

int[]x=new int[3];[]中为数组元素个数

x[0]=1;x[1]=2;x[2]=3;

int[]x={1,2,3};  x.length=3;

二维数组:

int[][]a=new int[x][y];    x为行 y为列

a.length为a的行数  a[0].length为第一行的元素个数


面向对象

三大特性:封装    继承    多态

封装原则:将不需要对外提供的内容隐藏起来,把属性都隐藏,提供公共方法对其访问。一般通过类,方法实现

继承:使用已有类派生出新的子类,实现代码复用,子类可修改父类成员变量,重写父类方法,可实现多态。

java只支持单一继承 extends ,多重继承可通过接口实现 implements

多态:前提是必须有子父类关系或者类实现接口关系,一般使用重写与重载

方法的重载:

同类同名的多个方法,参数列表不同(个数,类型,顺序不同)

方法的重写(覆盖):

子类对父类的方法的实现过程重新编写,同名,形参必须不变,返回值为基本类型必须一致,引用类型则父类一致或为父类子类,且子类方法访问修饰权限不能小于父类的。

定义类

成员变量与局部变量的区别:

成员变量是类中定义的,属于类。        局部变量是方法中定义的变量或是方法的参数

成员变量是对象的一部分,随对象创建存在消失,存在于堆内,一般自动赋值。

局部变量必须显示地赋值,随方法调用产生,存在于栈,调用结束自动消失。

成员方法

创建对象

声明引用对象,指向new的对象  如Cat cat=new Cat();

使用对象格式:对象名.对象成员

引用成员变量如:cat.color="orange";

引用成员方法如:cat.eat();

匿名对象

如new 类名()

可作为实参

传递参数

参数就是方法的自变量,在方法的()中实现传递

类的特性

类的私有成员可限制非本类访问来保护数据,可通过公共成员访问

构造方法

1.方法名与类名一致

2.无返回值

3.对类对象初始化

public 类名(){}

构造方法中通过this调用另一构造方法(this放第一行)this:代表对象。就是所在函数所属对象的引用。

静态成员是公共的,整个类共有的,也叫类成员

静态方法只能访问静态成员,不可以访问非静态成员。

因为静态方法加载时,优先于对象存在,所以没有办法访问对象中的成员。

静态方法中不能使用this,super关键字。

子类继承父类后,必须调用父类的构造方法,第一行super()。若无super(),默认调用父类无参构造方法。

抽象类

    a:抽象类和抽象方法都需要被abstract修饰。抽象方法一定要定义在抽象类中。

    b:抽象类不能直接创建对象(实例化),原因:调用抽象方法没有意义。

    c.抽象方法只定义方法声明,并不定义方法实现。

    d:只有覆盖了抽象类中所有的抽象方法后,其子类才可以创建对象。否则该子类还是一个抽象类。

    继承抽象类面对共性类型操作会更简单。

抽象类可以没有抽象方法

抽象关键字abstract不可以和private,final,static,native关键字共存

private只能访问本类,final为最终类,而adstract方法需要子类实现。

接口 定义格式

            public interface 接口名 {

                抽象方法1;

    }                    接口中的方法均为公共访问的抽象方法

接口中变量必须有固定的修饰符修饰,public static final

接口是一种特殊的抽象类

类与类单一继承可实现多接口,接口间可实现多继承

接口和抽象类

        相同点:

            都位于继承的顶端,用于被其他类实现或继承;

            都不能直接实例化对象;

            都包含抽象方法,其子类都必须覆写这些抽象方法;

        区别:

            抽象类可使用非抽象方法;接口只能包含抽象方法;

            抽象类只能被继承,而且只能单继承,接口需要被实现,而且可以多实现。

匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。

创建一个普通对象

        Person p = new Person();

        创建一个匿名对象

        new Person();

内部类将类写在其他类的内部,可以写在其他类的成员位置和局部位置,这时写在其他类内部的类就称为内部类。其他类也称为外部类。最常用到的内部类就是匿名内部类,它是局部内部类的一种。

匿名内部类,可以合并简化代码。

异常

处理方式有两种:1、捕捉;2、抛出。

对于捕捉:java有针对性的语句块进行处理。

try {

需要被检测的代码;

}

catch(异常类 变量名){

异常处理代码;

}

fianlly{

一定会执行的代码;

}


throw 和throws关键字的区别:

throw用于抛出异常对象,后面跟的是异常对象;throw用在函数内。

throws用于抛出异常类,后面跟的异常类名,可以跟多个,用逗号隔开。throws用在函数上

多线程

CPU同一时间执行多个程序段

Thread是程序中的执行线程

创建新执行线程有两种方法。

a:继承 Thread 类。该子类应重写 Thread 类的 run 方法。创建对象,开启线程。run方法相当于其他线程的main方法,线程执行代码在run()方法内

    b:实现 Runnable 接口。该类然后实现 run 方法。然后创建Runnable的子类对象,传入到某个线程的构造方法中,开启线程。

通过线程的start()方法启动线程

容器

列表接口list

List<数据类型> list = new ArrayList<数据类型>();

List<String> list = new LinkedList<String>();

list接口方法

    list.add(Object e):向集合末尾处,添加指定的元素

    list.add(int index, Object e)  向集合指定索引处,添加指定的元素,原有元素依次后移

    remove(Object e):将指定元素对象,从集合中删除,返回值为被删除的元素

    remove(int index):将指定索引处的元素,从集合中删除,返回值为被删除的元素

遍历(迭代)

1.使用Collection接口的toArray()方法

2.for循环size(),get()方法获取

3.迭代器遍历

=======================================================================================

先到这里啦,做的java小游戏用了一部分上面的,时间紧,GUI里Swing和事件处理的具体内容先不说了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,039评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,426评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,417评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,868评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,892评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,692评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,416评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,326评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,782评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,957评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,102评论 1 350
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,790评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,442评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,996评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,113评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,332评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,044评论 2 355