重拾Java-持续更新

简单的运行方式

一般先用javac命令运行.Java文件,这个过程是将Java源文件编译成class字节码文件,生成一个hello.class字节码文件,然后再用Java命令运行Java源文件中的hello类,即可实现编程目的。

javac hello.java

java hello

 

基本语法

区分大小写,类名首字母大写,每个单词首字母大写,方法名:小写字母开头,后面每个单词首字母大写,源文件名必须和类名相同,主方法入口是public static void main(String []args),意思是,这是所有Java程序的入口。

 

 

类和对象https://www.w3cschool.cn/java/java-object-classes.html

1.对象集合在一起是一个类,类的实例化是一个对象。Java中所有都是从对象出发,例如:String []a的意思是定义一个String类的数组a。

C++中:

string *a=['qdwsd','dfdsa'];//定义一个指向数组的指针a

string a ;//定义一个字符串变量a

Java中:

String []a ;//定义一个String类的数组a

类的内容包括成员方法(规定类的行为)和成员变量(规定类的属性)。

2.在创建一个对象的时候,至少要调用一个构造方法。构造方法的名称必须与类同名

3.用关键字new来创建一个新的对象(对象的创建分声明、实例化、初始化三步)

Puppy myPuppy = new Puppy( "tommy" );

声明 实例化 初始化

4.访问对象的(成员)方法和变量(变量:对象是类的实例化,即:一个对象=一个实例,此处的“变量”是指类的成员变量进行实例化后的内容)

对象名.(成员)方法名,对象名.变量名

public class Puppy{//定义类Puppy int puppyAge;//定义类的成员变量puppyAge public Puppy(String name){//定义构造方法 // 这个构造器仅有一个参数:name System.out.println("Passed Name is :" + name ); } public void setAge( int age ){//定义类Puppy的(成员)方法setAge puppyAge = age; }

/* 创建对象 */ Puppy myPuppy = new Puppy( "tommy" ); /* 通过方法来设定age */ myPuppy.setAge( 2 );

myPuppy.puppyAge;//访问对象myPuppy的变量

源文件

1.一个源文件中只能有一个public类,可以有多个非public类,源文件的名字要和public类的名字相同;import语句应该放在package语句和类定义之间;若源文件中的某个类定义在package中,则package语句应该在源文件的首行;package包主要用来对类和接口进行分类,避免由于类名相同而难以区分的问题。

2.import java.io.*;//此行表示命令编译器载入java_installation/java/io路径下的所有类

3.在Java中,如果给出一个完整的限定名,包括包名、类名,那么Java编译器就可以很容易地定位到源代码或者类。

 

数据类型

内置数据类型:Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

引用数据类型:引用类型变量由类的构造函数创建,对象、数组都是引用数据类型;所有引用类型的默认值都是null;

 

变量类型

Java的方法

1.方法的定义

修饰符 返回值类型 方法名 (参数类型 参数名){

...

方法体

...

return 返回值;

}

2.当方法返回一个值的时候,方法调用通常被当做一个值。例如:

 

int larger = max(30, 40);

 

如果方法返回值是void,方法调用一定是一条语句。例如,方法println返回void。下面的调用是个语句:

 

System.out.println("Welcome to Java!");

 

 

继承https://www.w3cschool.cn/java/java-inheritance.html

1.创建分等级层次的类。继承可以理解为一个对象从另一个对象获取属性的过程。 通过使用关键字extends,子类可以继承父类的除private属性外所有的属性。

2.所有Java的类均是由java.lang.Object类继承而来的,所以Object是所有类的祖先类,而除了Object外,所有类必须有一个父类,且只能有一个父类。继承的规则如下:

一般我们继承基本类和抽象类用extends关键字,实现接口类的继承用implements关键字;

Java类只支持单继承(继承基本类和抽象类),也就是说,一个类不能继承多个类;接口可以多继承,即一个类可以同时实现(用implements关键字)多个接口;

类和类之间可以extends继承,接口和接口之间也可以用extends继承,类可以实现implements接口,接口不能继承extends类,接口也可以继承extends接口;

如果在基本类前添加final修饰,也就定义该类不可被继承,该类不能作为父类。

例如:

public class Apple extends Fruit implements Fruit1, Fruit2{}//Apple类只能继承Fruit一个类,但是Fruit类却可以同时实现Fruit1和Fruit2两个接口。

如:public interface Fruit1 extends Fruit {}//这是接口中的多重继承

 

3.继承中最常使用的两个关键字是extends和implements。

这两个关键字的使用决定了一个对象和另一个对象是否是IS-A(是一个)关系。IS-A就是说:一个对象是另一个对象的一个分类。

Implements关键字使用在类继承接口的情况下, 这种情况不能使用关键字extends。

4.可以使用 instanceof 运算符来检验Mammal和dog对象是否是Animal类的一个实例。返回结果是true或false。

5.Van类和Speed类是HAS-A关系(Van有一个Speed),这样就不用将Speed类的全部代码粘贴到Van类中了,并且Speed类也可以重复利用于多个应用程序。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值