JAVA入门

对JAVA的初接触

先来Mark一些常用的学习网站,在网上逛了一圈不知道什么样的书籍适合初学者,就找了几个简单的网站开始自学,作为一个刚上大一的编程萌新,在完成课程的同时也要认真学鸭。

菜鸟教程 有许多语言和工具的教程

HOW2J的JAVA教程 亮点是有学习路线图和一些项目练手

腾讯云开发平台 可在线上完成编程,不需要自己配置环境

阿里云大学 结合视频学习效果会更棒

JAVA开发工具及环境

用的是大家推荐的Eclipse,使用时有JDK就可以直接运行程序,不需要配置jdk的环境变量。教程中配置的JAVA_HOME是为了向ANT^ 1,Maven[^2]之类的程序需要,配置PATH为了在控制台手动编译程序。在使用Eclipse可以先尝试下用系统控制台来执行java程序

JAVA的结构

JAVA是一门面向对象的语言,与大一课程学的C++里一开始的面向过程不同,每一个CLASS文件都表示了一个类,JAVA程序就是一系列对象的集合。一个CLASS文件里只能有一个的public类,可以有多个其他类,在主要的public中,需要有一个主方法入口

基本语法

  • 大小写敏感,如hello和Hello的区别
  • 所有类名的首字母应该大写,如果类名由若干个单词组成则每个字母都应大写
  • 源文件名必须和类名相同。保存时应使用类名作为文件名保存
  • 所有JAVA程序由public static void main(String []args)方法开始执行

package及import语句

package主要用来对类和接口进行分类,类似C++中的namespace。完整的class文件中应至多包含一个package语句且必须放在源程序第一句

package java.test;把编译器生成的所有.class文件放到包java.test中去

当在其他类想调用某个类的方法时,可以在package和类定义中间加一句

import 包名.*;这样会在你编译时向系统说明我想用这个包的内容,到后面比如你想用HelloWorld类中的Hello方法时,系统会判定成java.test.HelloWorld。

有点类似C++的#include,但import只是告诉系统一个方向。

JAVA的对象

同C++,JAVA对象建立时也需要一个构造方法,没有的话就执行默认的构造方法,但只要声明了带参的构造方法,那就不会再生成默认的构造方法,如果有特殊需要还要额外指定一个无参的构造方法。

JAVA的数据类型

注意:JAVA里使用long类型的数值要在数值后面加上L,否则将作为整形解析


引用菜鸟教程的笔记

引用类型是一个对象类型,它的值是指向内存空间的引用,就是地址,所指向的内存中保存着变量所表示的一个值或一组值。

1
2
int a;
a = 250; // 声明变量a的同时,系统给a分配了空间。

引用类型就不是了,只给变量分配了引用空间,数据空间没有分配,因为不知道数据是什么。

错误的例子:

1
2
MyDate today;
today.day = 4; // 发生错误,因为today对象的数据空间未分配。

引用类型变量在声明后必须通过实例化开辟数据空间,才能对变量所指向的对象进行访问。

1
2
MyDate today;          //将变量分配一个保存引用的空间
today = new MyDate(); // 这句话是2步,首先执行new MyDate(),给today变量开辟数据空间,然后再执行赋值操作

引用变量赋值:

1
2
3
MyDate a,b;       // 在内存开辟两个引用空间
a = new MyDate(); // 开辟MyDate对象的数据空间,并把该空间的首地址赋给a
b = a; // 将a存储空间中的地址写到b的存储空间中

数据类型的转换(待深入了解)

每个简单的数据类型都可以转换成相应的包装类,然后使用包装类的构造函数,利用包装类的方法也可以实现不同数值类型的转换

Boolean(boolean value)、Character(char value)、Integer(int value)、Long(long value)、Float(float value)、Double(double value)