Java学习笔记--基础

java程序以文本形式存在,必须经过编译生成字节的代码类文件后才能运行。

cmd

javac OneJavaApp.java

javaOneJavaApp          在此步骤执行时,会自动添加.class后缀

 

1.1  常量变量

final float PI=3.1415926F;

final为声明为常量,float常量为浮点型

变量名

字母数字下划线美元符,允许使用汉字作为变量,对大小写敏感

成员变量_静态变量

用static修饰的变量,有效范围是整个类

成员变量_实例变量

和静态变量相对的,有效范围是整个实例

局部变量

 

 

1.2  基本数据类型

1.2.1 基本类型

数值型:整数类型(byte,short,int,long)

十进制,八进制,十六进制

十进制byte、八进制short、十六进制int、long超过16进制范围,末尾用l或者L声明

0x160000000L

     浮点类型(float,double)

56.78

十进制

科学计数法

float

56.78F

5.678E1F

double

56.78

567.8E-1

字符型:char

布尔型:boolean

1.2.2 类型转换(有可能造成数据丢失)

自动类型转换 byte bid = 16

强制类型转换  byte bid = (byte)id;

1.2.3 Java运算符

赋值运算符: =

算术运算符:+、-、*、/、%

关系运算符:>、<、>=、<=、==、!=

逻辑运算符:逻辑与   &&或者&

逻辑或    ||或者|

逻辑非    !

计算运算符两边的表达式时存在着差别分为

短路(左边阻塞右边不执行)、非短路

&&和||是短路运算符,使用短路运算符可以提高代码的安全性,&|是非短路运算符

位运算符:

按位与&、按位或|、按位异或^、按位取反~

符合赋值运算符    &=

左移运算符<<、右移运算符>>、无符号右移运算符>>>

其他运算符:

自增运算符++

a++

先进行算数运算,后进行自增

++a

先进行自增,后进行算数运算

自减运算符--

?:根据?左侧的布尔值,返回:两侧的值

[]用于生命访问数组的元素

 

1.3 Java编码规范

1.3.1  命名规则

常量

每个单词用下划线隔开,英文字母大写

MAX_VALUE

变量

英文字母小写

add

方法

首字母小写, 多个单词构成其后首字母大写

addData()

前缀全由小写字母构成

java.io

使用名词,首字母大写,其后首字母大写

RandomAcessFile

接口

与类的相同

FileFileter

1.3.2 代码编写规则

声明变量独占一行

语句以结束

返回语句    return Value 形式   return (2);

 

1.4  Java程序注释

单行注释

//注释内容

多行注释

/*注释内容*/

文档注释

/**注释内容*/

 

 

2.1    算法和逻辑控制

 

2.1.1 if_else语句

if-else条件语句

if(条件表达式){ 语句序列1 }else{ 语句序列2 }

if-else if-else多分支语句

 

2.1.2  switch多分支语句 

switch( 产生条件 ){

case0: 语句序列1 ;

[break;]

case1: 语句序列2 ;

...

default: 语句序列 n

[break;]

}

 

//短路和非短路

 

pbulicclass cal{

publicstatic void main{

inta = 1;

intb = 2;

boolean        result= ((a=9+3)<10)&&((b=8-3)>4);

System.out.println("result="+ result);

System.out.println("a="+ a);

System.out.println("b="+ b);

booleanresult = ((a=9+3<10)&((b=8-3)>4);

System.out.println("b="+b);

Stringname = null;

//判定那么不等于空的两种方法

if(name!=null&&!name.equals(""))

System.out.println("用户名:"+name);

else

System.out.println("请输入用户名!");

//其他运算符

intnum1=3;

intnum2=3;

inta = 2+(++num1);

intb = 2+(num2++);

System.out.println(a);

System.out.println(b);

System.out.println(num1);

System.out.println(num2);

intstore = 12;

System.out.println(store<=5?"库存不足:":"库存量"+store);

 

}

}

 

 

2.1.3  while循环语句

while( 条件表达式 ){语句序列 }

2.1.4 do-while循环语句

do{ 语句序列 }while( 条件表达式 );

2.1.5 foreach 语句

for(元素变量 :遍历对象){循环体}

int[]array={12,42,42,22,13,58};

for (int i :array){

System.out.println(i);

}

2.1.6  跳转语句

break

退出当前循环

 continue

 跳出本次循环,直接进入下一次循环

return

从一个方法返回,将控制交给其他语句

3.1  面向对象编程

3.1.1 特点

封装性:为用户提供对象的属性和行为的接口

继承性:利用特定对象之间的共有属性

父类(超类),子类

多态性:在基类中定义的属性或方法在基类及其各个子类中具有不同的语义

3.1.2 类和对象

[修饰符]class <类名> [extends 父类名][implements 接口列表]{ 定义成员变量;定义成员方法 }

修饰符

public、abstract、final

可选参数

类名

首字母大写

必选参数

extends父类名

使用extends关键字的时候为必选

 

implements 接口参数

 

可选参数

3.1.3 成员变量和局部变量

声明成员变量:[修饰符][static][final][transient][volatile]<变量类型><变量名>;

修饰符

public、protected、private

可选参数

static

静态变量,如果省略该关键字,则为成员变量

可选参数

final

用于指定该成员变量为取值不会改变的常量

可选参数

transient

用于指定该成员变量为暂时性变量,用于对象存盘

可选参数

volatile

用于指定该成员变量为共享变量,用于并发线程的共享

可选参数

变量类型

用于指定变量的数据类型

必选参数

变量名

用于指定成员变量的名称

必选参数

声明局部变量:[final]<变量类型><变量名>;

final

指定fail局部变量为常量

可选参数

变量类型

用于指定变量的数据类型

必选参数

变量名

用于指定变量的名称

必选参数

构造方法:构造方法没有返回值、构造方法的名称要与本类的名称相同

普通没有返回值的构造 public void methodEx(){//..构造方法体}

语法public book(){//...构造方法体}

public class Anything(){

public Anything(){          //定义无参数的构造方法

this("this调用有参数构造方法");     //使用this关键字调用有参构造方法

System.out.println("无参构造方法");

public Anything(){

System.out.println("有参构造方法");

}

}

 

3.1.4 创建对象

声明对象:对象是类的实例,要先定义该对象的类:类名对象名;

类名

用于指定一个已经定义的类

必选

对象名

用于指定对象名称

必选

为对象分配内存:实例化对象。:对象名 = new  构造方法名([ 参数列表 ]);

对象名

用于指定已经声明的对象名

必选

构造方法名

用于指定构造方法名

必选

参数列表

用于为指定的构造方法提供入口参数

可选参数

Fruit fruit = new Fruit();

销毁对象:自动销毁

3.2 使用包

1、将功能相近的类放在同一个包中

2、包在一定程度上避免命名冲突

3、在Java中,访问权限是以包为单位的

3.2.1 创建包:package 包名;

3.2.2 使用长名引用包中的类

com.wgh.Circcirc = new com.wgh.Circ();

使用import引用包中的类

import com.wgh.Circ;

3.3 了解Java中的继承关系

创建子类 [修饰符]class子类名 extends 父类名

修饰符

指定类的访问权限public、abstract、final

可选参数

子类名

指定子类的名称,首字母大写

必选参数

extends 父类名

指定要定义的子类继承那个父类

必选参数

继承使用的原则:不能继承private的成员变量和成员方法

能够继承同一包中的成员变量和成员方法

子类变量中声明一个与父类变量同名的变量或者方法,则子类变量覆盖父类变量或者方法

使用this关键字:

this.成员变量名

this.成员方法名()

使用super关键字:(访问子类中被子类覆盖或隐藏的成员方法或成员变量)

调用父类的构造方法:使用super关键字:super([参数列表];

public Animal(){}

public Animal(String strSkin){skin = strskin;}

public Bird(){super("羽毛");}

操作被隐藏的成员变量和被覆盖的成员方法

super.成员变量名

super.成员方法名([列表参数])

super.skin = "羽毛";

super.move()

认识多态技术(重载Overloading)(覆盖Overriding)

重载

一个类中出现多个方法名相同,但参数个数和参数类型不同的方法

重载的方法不一定有联系,为了提高程序的可读性,一般只重载相似的方法

 覆盖

父类和子类的关系,在子类继承父类的过程中,方法名相同,便覆盖

抽象类:两个特殊类抽象类和final类

抽象类

只做声明方法的存在而不去具体实现它的类

abstract class 类名{类体}

抽象类中的创建没有实际意义的必须要子类重写的方法称为抽象方法

abstract <方法返回值类型> 方法名(参数方法);

方法返回值类型

指定方法的返回值类型,如果没有返回值使用void

必选参数

方法名

用于指定抽象方法的名称

必选参数

参数列表

方法中所需参数

可选参数

final类与final方法:不允许别人对这个类进行任何的改动

final class类名{ 类体 }

Java中的接口:一些方法特征的集合

[修饰符]interface 接口名[extends 父接口名列表]{

[public] [static][final] 常量;

[public][abstract]方法;}

修饰符

接口的访问权限,可选值为public

可选参数

接口名

指定接口的名称

必选参数

extends 父接口名列表

指定要定义一个常量PI和两个方法

可选参数

方法

接口中的方法只有定义没有实现

 

接口默认修饰符为public,并且不允许定义private和protected

public interface Calculate{

final float PI = 3.14159f;

float getArea = (float a);

float getCircumference(float r);}

实现接口:Java不支持多继承,要实现多继承,可以通过接口实现

[修饰符] class <类名>[extends 父类名][implements 接口列表]{}

修饰符

用于指定类的访问权限public、abstract、final

可选参数

类名

指定类的名称,首字母大写

必选参数

extends父类名

用于指定要定义的类继承哪个父类

可选参数

implements接口列表

用于指定该类实现的是哪些接口

可选参数

在类的继承中,只能做单重继承,而在实现接口的时候后可以一次实现多个接口,每个接口用逗号分隔,这时候可能会出现常量名或者方法名冲突的情况,用“接口名.常量”来实现,如果出现多个方法,只需实现一个方法就行

3.4 初探数组

相同类型的用一个标识符封装到一起的对象序列或基本类型数据序列

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java基础学习笔记 # 一、Java简介 Java是一种面向对象的编程语言,由Sun Microsystems(现在是Oracle)于1995年首次发布。它具有跨平台的特性,可以在不同的操作系统上运行。Java语言被广泛应用于开发各种类型的应用程序,包括桌面应用、Web应用、移动应用等。 # 二、Java基本语法 ## 1. 变量与数据类型 Java是强类型语言,每个变量必须先声明后使用。Java提供了多种数据类型,包括基本数据类型(整数、浮点数、字符、布尔值)和引用数据类型(类、接口、数组)。 ## 2. 运算符 Java提供了多种运算符,包括算术运算符、关系运算符、逻辑运算符等,用于进行各种数学或逻辑运算。 ## 3. 控制流程 Java提供了多种控制流程语句,包括条件语句(if-else语句、switch语句)、循环语句(for循环、while循环)、跳转语句(break语句、continue语句)等,用于控制程序的执行流程。 ## 4. 方法和类 Java的方法用于封装一段可重复使用的代码,可以带有参数和返回值。类是Java程序的基本组织单位,包含了属性和方法。可以使用关键字class定义一个类,通过实例化类的对象来调用其方法。 # 三、面向对象编程 Java是一种面向对象的编程语言,面向对象编程的核心概念包括封装、继承和多态。 ## 1. 封装 封装是将数据和行为打包成一个类,通过访问修饰符(public、private等)控制对类的成员的访问权限。 ## 2. 继承 继承允许一个类继承另一个类的属性和方法,并且可以通过重写来修改或扩展继承的方法。 ## 3. 多态 多态允许通过父类类型的引用来引用子类对象,实现对不同子类对象的统一调用。 # 四、异常处理 Java提供了异常处理机制,用于处理程序的错误情况。异常分为可检查异常(checked exception)和不可检查异常(unchecked exception),可以使用try-catch语句来捕获和处理异常。 # 五、Java标准库 Java标准库提供了大量的类和接口,用于完成各种常见的任务。其包括输入输出、集合、多线程、网络编程等功能,可以大大简化开发过程。 以上是我学习Java基础笔记总结,希望对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值