提醒:关于那些和我一样新鸟来看资料的,能看懂多少看多少,看不懂的就是不重要,重要的你想我自己学习肯定要标注的,这些信息明白每个知识点实际作用就好了,其他的比如等会讲的常量内存,常量池这些都是我找的资料,有的自己都还不是太清楚,只是为了明白有这回事,没有那个新手教程一上来就讲这些,我拿低工资的怎么能去给搞研究的操心!

程序的编译与执行:

1.程序入口,在每一种编编程中,都会有一个main作为程序入口,JAVA的main写法如下:

public static void main(String){}

2.第一个程序:

class Dome{public static void main(String [] args){System.out.print("Hello,Wrod!"); }}

写完代码后,我们需要用JAVAC编译器,编译出能让每个系统能看懂的代码,此时系统就会生成对应的CLASS文件,每一个类都会单独编译出一个class。然后再用JAVA在虚拟机中运行代码!JAVA称此class文件为:字节码文件!

JAVA生成程序练习步骤:

1.编写JAVA   2.编译源程序生成字节码文件   3.执行编译后的字节码文件测试!

-------------------------------------------------------------------------------------------

JAVA的基本语法:

一.关键字:关键字是电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的变量。Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。Java语言规定关键字不能作为标识符。 目前共有53个Java关键字,其中,"const"和"goto"这两个关键字在Java语言中并没有具体含义。Java语言把它们列为关键字,只是因为"const"和"goto"是其他某些计算机语言的关键字。

3.java的关键字分别是什么,作用是什么?  以下关键词来自CNDS博客:气自华.

(1).访问修饰符的关键字(共3个)

关键字

意思

备注,常用

public

公有的

可跨包,(默认选择)

protected

受保护的

当前包内可用

private

私有的

当前类可用

(2).定义类、接口、抽象类和实现接口、继承类的关键字、实例化对象(共6个)

关键字

意思

备注,常用

class

public class A(){}  花括号里有已实现方法体,类名需要与文件名相同

interface

接口

public interface B(){}  花括号里有方法体,但没有实现,方法体句子后面是英文分号“:”结尾

abstract

声明抽象

public abstract class C(){} 介于类与接口中间,可以有也可以没有已经实现的方法体

implements

实现

用于类或接口实现接口public class A  interface B(){}

extends

继承

用于类继承类 public class A extends D(){}

new

创建新对象

A a=new A();  A表示一个类

(3).包的关键字(共2个)

关键字

意思

备注,常用

import

引入包的关键字

当使用某个包的一些类时,仅需类名 然后使用ctrl+shift+o或者选定类名(类或属性或方法)按住ctrl+单击 即可自动插入类所在的包。如:JFrame 快捷键之后自动加入

import javax.swing.JFrame;

package

定义包的关键字

将所有有关的类放在一个包类以便查找修改等。如:package javake.flycat.draw002;

(4).数据类型的关键字(共12个)

关键字

意思

备注,常用

byte

字节型

8bit

char

字符型

16bit

boolean

布尔型

--

short

短整型

16bit

int

整型

32bit

float

浮点型

32bit

long

长整型

64bit

double

双精度

64bit

void

无返回

public void A(){}   其他需要返回的经常与return连用

null

空值

true

false

(5).条件循环(流程控制)(共12个)

关键字

意思

备注,常用

if

如果

if(){} 如果小括号里面怎么怎么样 花括号就怎么怎么样

else

否则,或者

常与if连用,用法相同

while

当什么的时候

while 怎么样就do什么    while(){}

for

满足三个条件时

for ( ; ; ){}

switch

开关

switch(表达式)
{
case 常量表达式1:语句1;
....
case 常量表达式2:语句2;
default:语句;
}
default就是如果没有符合的case就执行它,default并不是必须的.
case后的语句可以不用大括号.
switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型.

case

返回开关里的结果

default

默认

do

运行

长与while连用

break

跳出循环

continue

继续

中断本次循环,并并开始下一次

return

返回

return 一个返回值类型

instanceof

实例

一个二元操作符,和==,>,<是同一类的。测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据

(6).修饰方法、类、属性和变量(共9个)

关键字

意思

备注,常用

static

静态的

属性和方法都可以用static修饰,直接使用类名.属性和方法名。  只有内部类可以使用static关键字修饰,调用直接使用类名.内部类类名进行调用。   static可以独立存在。静态块

final

最终的不可被改变的

方法和类都可以用final来修饰

final修饰的类是不能被继承的

final修饰的方法是不能被子类重写。

常量的定义:

final修饰的属性就是常量。

super

调用父类的方法

常见public void paint(Graphics g){

super.paint(g); ··· }

this

当前类的父类的对象

调用当前类中的方法(表示调用这个方法的对象)

this.addActionListener(al):等等

native

本地

strictfp

严格,精准

synchronized

线程,同步

transient

短暂

volatile

易失

static 例子:

public class Test{

class A{}   //内部类

ActionListener al=new ActionListener(···){}   //匿名内部类

}

静态块优先于其他方法/类的执行

(7).错误处理(共5个)

关键字

意思

备注,常用

catch

处理异常

1.try+catch
程序的流程是:运行到try块中,如果有异常抛出,则转到catch块去处理。然后执行catch块后面的语句

2.try+catch+finally
程序的流程是:运行到try块中,如果有异常抛出,则转到catch块,catch块执行完毕后,执行finally块的代码,再执行finally块后面的代码。
如果没有异常抛出,执行完try块,也要去执行finally块的代码。然后执行finally块后面的语句

3.try+finally
程序的流程是:运行到try块中,如果有异常抛出的话,程序转向执行finally块的代码。那末finally块后面的代码还会被执行吗?不会!因为你没有处理异常,所以遇到异常后,执行完finally后,方法就已抛出异常的方式退出了。
这种方式中要注意的是,由于你没有捕获异常,所以要在方法后面声明抛出异常

(来自网上的资料)

try

捕获异常

finally

有没有异常都执行

throw

抛出一个异常对象

一些可以导致程序出问题的因素,比如书写错误,逻辑错误或者是api的应用错误等等. 为了防止程序的崩溃就要预先检测这些因素,所以java 使用了异常这个机制.

在java中异常是靠 "抛出" 也就是英语的"throw" 来使用的,意思是如果发现到什么异常的时候就把错误信息 "抛出"

throws

声明一个异常可能被抛出

把异常交给他的上级管理,自己不进行异常处理

throw是你执行的动作。比如你觉得可能有异常,那么就抱出去 如:

String a; if(a == null),

throw new exception("a为null");

所以throw是一个抛出去的动作

throws只用在一个方法的末端,表示这个方法体内部如果有异常,这抛给它的调用者。 如: public void add(int a, int b) throws Exception(); 这个方法表示,在执行这个方法的时候,可能产生一个异常,如果产生异常了,那么谁调用了这个方法,就抛给谁。(来自百度)

(8).不知道是什么(共2个)

关键字

意思

备注,常用

enum

枚举,列举型别

assert

断言

Enum:代表一组常用常量,可用来代表一类相同类型的常量值如:

性别:

public enum SexEnum {

male, female;

}

颜色:

public enum Color {

RED, BLUE,GREEN,BLACK;

}

枚举对象里面的值都必须是唯一的。

注意:只要不完全和这些重名就好了,你可以在这些后面加上数字或字母避免完全和关键词重复就没毛病!

二.标识符:我们为自己的函数取或,包,常量,变量取名就叫标识符。那么标识符要注意那些:

  1. 标识符由26个英文字符大小写(a~zA~Z)、数字(0~9)、下划线(_)和美元符号($)组成。
  2. 不能以数字开头,不能是关键字
  3. 严格区分大小写
  4. 标识符的可以为任意长度

Java中的标识符命名规范:

1.  包名

多个单词组成时所有字母小写(例:package  com.baidu)

2.  类名和接口

多个单词组成时所有单词的首字母大写(例:HelloWorld)

3.   变量名和函数名

多个单词组成时第一个单词首字母小写,其他单词首字母大写(例:lastAccessTime、getTime)。

4.   常量名

多个单词组成时,字母全部大写,多个单词之间使用_分隔(例:INTEGER_CACHE)

注意:只是为了增加规范性、可读性而做的一种约定,标识符在定义的时候最好见名知意,提高代码阅读性。

三.常量

代码中那些一直不变的数我们可以生成常量,所以这里首先我们就要知道常量是什么?附:简单的常量定义用final或者static

Private static Random rd1=new Random(); //实例化一个随机数生成对象。

Private final int int1=rd1.nestInt(10); //生成随机数并赋值给常量int1

Private static final int int2=rd1.nestInt(10); //生成随机数并赋值给常量int2

注意:是简单的常量定义方式,以后学了更多的知识,还可以用很多其他方法来代替定义常量,或者直接定义一个变量,保持他值在代码中始终不变,他也是一个常量。除此自己定义的常量以外还有系统已经定义好的:123456789这种直接可以使用的阿拉伯数字直接使用字母符号,true false都是常量!

1. Private static Random rd1=new Random(); //实例化一个随机数生成对象。

2. Private final int int1=rd1.nestInt(10); //生成随机数并赋值给常量int1

3. Private static final int int2=rd1.nestInt(10); //生成随机数并赋值给常量int2

4. final int BLOG="糖醋酸辣椒"; //字符串也是常量,注意常量是要大写才规范,以上那些小写的都属于不规范的!

四.变量

变量顾名思义,就是会变的量,他会在堆栈给你分配一块内存,然后你变量的名字实际是映射了这块的地址。要明白变量,还是例子说话最靠谱!

//实例:让用户输入两个数求他们的和!
import java.util.*;//照抄后面就明白了
class Calc
{    public static void main(String[] args){     Scanner s = new Scanner(System.in);//创建一个Scanner 他会扫描出你的在控制带输入的内容,然后作为一个对象传给你。System.out.print("请输入第一个数:");int a = s.nextInt();//让用户输入一个数存放在变量a中 System.out.print("请输入第二个数:");    int b = s.nextInt();//让用输入第二个数字存放在变量b中int c = a + b;System.out.print(a+"+"+b+"="+c);} }

老鸟们经验:代码要自己敲,不要复制,初学的时候最重要的就是手感和错误!

看上面代码,其中的int a int b in c 就是变量,注意他们的值,在运行的时候是不是可以接受任何值,除了不能操作int的范围,你想写 多少加多少都可以。能够在代码中随时该变储存值就是变量!简单的说,我们可以把变量看作是个盒子,可以将钥匙、手机、饮料等物品存放在这个盒子中,也可以在需要的时候换成我们想存放的新物品。

在 Java 中,我们通过三个元素描述变量:变量类型、变量名以及变量值。 int a =s.nextInt();  其中int 就是类型,a是变量名,S。nextInt就是把你输入的值转换为int类型,他就是值!

int a = 10; 这个int是类型 a是变量名,10是值!

局部变量和全局变量,成员变量:外加一个静态全局变量,静态全局变量与全局变量的差别是:前者只能被同一源文件中的函数调用,其它文件中的函数不能调用静态全局变量。

成员变量

局部变量

静态变量

定义位置

在类中,方法外

方法中,或者方法的形式参数

在类中,方法外

初始化值

有默认初始化值

无,先定义,赋值后才能使用

有默认初始化值

调用方式

对象调用

---

对象调用,类名调用

存储位置

堆中

栈中

方法区

生命周期

与对象共存亡

与方法共存亡

与类共存亡

别名

实例变量

---

类变量

转载于:https://www.cnblogs.com/pipixia951236/p/6816107.html

Java基础笔记(2) 程序入口 关键字 标识符 常量 变量相关推荐

  1. Java基础语法(一)注释,关键字,常量,变量,数据类型,标识符,数据类型转换...

    从今天开始,记录学习Java的过程.要学习Java首先得有环境,至于环境的安装我就不说了,百度有很多教程,比如:http://jingyan.baidu.com/article/20095761904 ...

  2. Java基础笔记_6_类和对象_成员变量

    一 类和对象 类是抽象的概念,是对象的模板 对象是具体的事物,是类的具体实例 创建类的语法 public class 类名{  // 类内容 } 创建对象的语法 new 关键字就是实例化对象的意思.& ...

  3. Java基础笔记 – 枚举类型的使用介绍和静态导入

    Java基础笔记 – 枚举类型的使用介绍和静态导入 本文由 arthinking 发表于404 天前 ⁄ Java基础 ⁄ 暂无评论 ⁄ 被围观 1,433 views+ 1.枚举(Enum): JD ...

  4. JAVA之旅(一)——基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算

    JAVA之旅(一)--基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算 Android老鸟重新学一遍JAVA是什么感觉?枯燥啊,乏味啊,而且归纳写博客,都 ...

  5. JAVA之旅(一)——基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算...

    JAVA之旅(一)--基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算 Android老鸟重新学一遍JAVA是什么感觉?枯燥啊,乏味啊,而且归纳写博客,都 ...

  6. Java基础笔记6——File、流、枚举、断言

    Java基础笔记6 十一.File 代表文件或目录的类. 所表示的文件或目录在计算机中不一定真实存在. 绝对路径:以盘符或者/开头的路径--不以当前路径为基准,直接跳转到指定的位置 相对路径:不以盘符 ...

  7. java基础知识点(3)——标识符常量变量

    标识符-常量-变量 和小学妹一起学java 文章目录 标识符-常量-变量 一.注释, 关键字和标识符 二.关键字 1.什么是关键字 2.特点 3.关键字 三.标识符 四.java的命名规范 五.常量 ...

  8. Java基础笔记(2)——HashMap的源码,实现原理,底层结构是怎么样的

    Java基础笔记(2)--HashMap的源码,实现原理,底层结构是怎么样的 HashMap的源码,实现原理,底层结构 1.HashMap: HashMap是基于哈希表的 Map 接口的实现.此实现提 ...

  9. Java基础笔记23-集合练习题

    Java基础笔记23-集合练习题 定义一个集合,实现去重复的功能 定义一个数组,数组中存放的是图片的后缀,给一个文件的名字,判断是否是图片 定义一个带有数字和字符串的集合,使用迭代器进行迭代,只输出字 ...

最新文章

  1. pypy解释器提高python的效率之安装pypy
  2. 二叉树的递归遍历和层序遍历(c/c++)
  3. 【安全漏洞】某CMS后台防护逻辑漏洞导致GETSHELL
  4. 微服务架构:BFF和网关是如何演化出来的?
  5. apr_file_seek 踩坑
  6. 常见维修电路板技术汇总
  7. javascript变量提升/函数提升
  8. mysql5.6 慢查询_MySQL5.6 如何优化慢查询的SQL语句
  9. 父工程的版本号决定上传私服仓库的位置
  10. 安全研究公司Gauntlet称轻量级区块链协议Mina的攻击成本很高
  11. 日常一些需要搜索,需要花功夫但又简单的东西 此文会持续更新
  12. Linux使用 tar命令-g参数进行增量+差异备份、还原文件
  13. JS 新浪API获取IP归属地
  14. CPU内部原理,一文解析
  15. java 压力测试_记一次完整的java项目压力测试
  16. vue列表左右箭头滑动_vue点击左右箭头改变数据
  17. 苹果系统“加载图片时提示“无法置入jpg,因为暂存盘已满”怎么解决?
  18. 京东订单拉取接入流程
  19. NIO与Netty编程(三)之Netty编程
  20. overleaf 插入图片_Overleaf手册(三)--图片

热门文章

  1. eclipse启动mysql报错日志在哪儿_Eclipse启动报错,解决办法
  2. Helm 3 完整教程(五):Helm 内置对象详解
  3. Oracle优化避免索引失效
  4. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京)(热身赛)
  5. 【PAT乙】1005 继续(3n+1)猜想 (25分)
  6. 【NOIP2014】【Luogu2118】比例简化(枚举)
  7. 如何保证线程安全有序性_线程安全性-原子性-可见性-有序性
  8. python语言源程序文件类型_Python语言源程序文件的文件类型是__________。
  9. Struts2→拦截器、工作原理、拦截器计算Action执行时间、Struts2自带拦截器、拦截器栈
  10. android room数据库embed,Android room数据库基操