java基础之基础语法详录(一)
【前言】
java的语法先从基础语法学,Java语言是由类和对象组成的,其对象和类又是由方法和变量组成,而方法,又包含了语句和表达式。
- 对象:(几乎)一切都是对象,比如:一只熊猫,他的外观,颜色,他在吃、喝、睡、玩
- 类:如果说一切都是对象,那么什么决定了某一类对象的外观和行为呢?类是一个模板,它描述一类对象的行为和状态。
class HelloWorld{/*这表示一个类,class后跟的是类名*/}
- 方法:(方法也可以称作成员函数)方法你可以看成是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
- 变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
【第一个java程序】
public class HelloWolrd {
/**
* 第一个Java程序
*/
public static void main(String[] args) {
// 打印Hello World
System.out.println("Hello World");
} }
说一下保存,编译,运行这个程序
- 用记事本保存这段代码,保存后修改文件名为HelloWolrd.java(记得把文件后缀名显示)如图:
2. 打开dos窗口,找到你保存的位置(比如:我的位置是D:\HelloWorld)
3. 切换盘符到你的文件存放目录
4. 输入 javac HelloWorld.java 回车,这时HelloWorld文件夹中应该多了一个HelloWorld.class文件,这就编译了这段代码
5. 再次输入java HelloWorld 打印出Hello World
【基本语法】
1. 区分大小写:大小写是敏感的,比如HelloWorld与helloworld是不同的
2. 类名:java的类名首字母必须大写,且类名像UserNameManage这种多个字母组成的,则每个单词的首字母应该大写,俗称"驼峰命名法"中的大驼峰命名法(即:帕斯卡命名法)
3. 方法名:一个单词则小写 例如:user,多个单词首字母小写,从第二个单词开始,每个单词首字母大写 例如:userNameManage(小驼峰命名法)
4. 关键字:都是小写的 例如:public
5. 常量: 全部大写 例如:PI
6. 变量:规则同方法命名一样
7. 包: 全部小写
【java标识符】
Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
1. 只能使用字母、数字、下划线和美元符。
2. 只能以字母、下划线和美元符开头。也就是不能以数字开头。
3. 严格区分大小写,没有长度限制。建议不要太长。
4. 应该具有特定的意义,关键字不可以用作标识符。
【java修饰符】
Java可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:
- 访问控制修饰符 : default, public , protected, private
- 非访问控制修饰符 : final, abstract, strictfp
【java分隔符】
- 具有:空格、圆括号、花括号、分号等。
- 每条语句无论一行还是多行都以分号结束。块(Block)是包含在{}里面的多条语句,块可以嵌套。空白插在代码的元素中间:由一个或多个空格组成,也可以由一个或多个tab空格组成多个空行。
【java注释】
写程序注释是必不可少的一部分。做规范,显条理,对于以后的开发带来了方便。
public class HelloWorld { /**
* @param args
* 第一个Java程序
* 这是文档注释
*/
public static void main(String[] args) {
/*
* 这是多行注释
*/
System.out.println("Hello World");
// 打印Hello World(这是一个单行的注释)
System.out.println("Hello World");
} }
【java关键字】
关键字 |
含义 |
Abstract |
用在类的声明中来指明一个类是不能被实例化的,但是可以被其它类继承。一个抽象类可以使用抽象方法,抽象方法不需要实现,但是需要在子类中被实现 |
Boolean |
布尔类型,只有true或者false |
Break |
停止,并跳出本层循环 |
Byte |
8bit (位),也就是8个1/0表示,即二进制 |
Case |
用来定义一组分支选择,如果某个值和switch中给出的值一样,就会从该分支开始执行。 |
Catch |
用来声明当try语句块中发生运行时错误或非运行时异常时运行的一个块。 |
Char |
用来定义一个字符类型 |
Class |
类 |
Const |
在Java中,const是作为保留字以备扩充,同样的保留字以备扩充还有goto.你可以用final关键字.final也可以用于声明方法或类,被声明为final的方法或类不能被继承。一般C里是const 对应java用final |
Continue |
用来打断当前循环过程,从当前循环的最后重新开始执行,如果后面跟有一个标签,则从标签对应的地方开始执行。 |
Default |
配合switch跟case使用,但case中没有找到匹配时,则输出或者为default后面的语句。 |
Do |
用来声明一个循环,这个循环的结束条件可以通过while关键字设置 |
Double |
用来定义一个double类型的变量 |
Else |
如果if语句的条件不满足就会执行该语句。 |
Extends |
extends 继承 类X 通过extend 类Y来添加功能,或者添加变量,或者添加方法,或者覆盖类Y的方法。一个接口extends另外一个接口来添加方法。 |
False |
假的 |
Final |
一个Java语言的关键字。你只能定义一个实体一次,以后不能改变它或继承它。更严格的讲:一个final修饰的类不能被子类化,一个final修饰的方法不能被重写,一个final修饰的变量不能改变其初始值。 |
Finally |
用来执行一段代码不管在前面定义的try语句中是否有异常或运行时错误发生。 |
Float |
用来定义一个浮点数变量 |
For |
用来声明一个循环。程序员可以指定要循环的语句,推出条件和初始化变量。 |
Goto |
虽然为Java关键字,但是仅在C语言里面使用,Java不提供Goto语句 |
If |
Java编程语言的一个关键字,用来生成一个条件测试,如果条件为真,就执行if下的语句。 |
Implements |
Java(TM)编程语言的一个关键字,在类的声明中是可选的,用来指明当前类实现的接口。 |
Import |
Java(TM)编程语言的一个关键字,在源文件的开始部分指明后面将要引用的一个类或整个包,这样就不必在使用的时候加上包的名字。 |
Instaceof |
一个二操作数的Java(TM)语言关键字,用来测试第一个参数的运行时类型是否和第二个参数兼容。 |
Int |
Java(TM)的一个关键字,用来定义一个整形变量 |
Interface |
Java(TM)的一个关键字,用来定义一系列的方法和常量。它可以被类实现,通过implements关键字。 |
Long |
用来定义一个long类型的变量 |
Native |
本地方法。 |
New |
用来创建一个新的方法 |
Null |
当String类型没赋值时,该变量的值为Null |
Package |
包的意思 |
Private |
用在方法或变量的声中。它表示这个方法或变量只能被这个类的其它元素所访问。 |
Protected |
在方法和变量的声明中使用,它表示这个方法或变量只能被同一个类中的,子类中的或者同一个包中的类中的元素所访问。 |
Public |
在方法和变量的声明中使用,它表示这个方法或变量能够被其它类中的元素访问。 |
Return |
用来结束一个方法的执行。它后面可以跟一个方法声明中要求的值。 |
Short |
用来定义一个short类型的变量。 |
Static |
用来定义一个变量为类变量。类只维护一个类变量的拷贝,不管该类当前有多少个实例。"static" 同样能够用来定义一个方法为类方法。类方法通过类名调用而不是特定的实例,并且只能操作类变量。 |
Super |
父类 |
Switch |
是一个选择语句,与case,default,break一起使用。 |
Synchronized |
线程同步 |
This |
用来代表它出现的类的一个实例。this可以用来访问类变量和类方法。 |
Threadsafe |
|
Throw |
允许用户抛出一个exception对象或者任何实现throwable的对象 |
Throws |
用在方法的声明中来说明哪些异常这个方法是不处理的,而是提交到程序的更高一层。 |
Transient |
用来表示一个域不是该对象串行化的一部分。当一个对象被串行化的时候,transient型变量的值不包括在串行化的表示中,然而非transient型的变量是被包括进去的。 |
True |
真的 |
Try |
用来定义一个可能抛出异常语句块。如果一个异常被抛出,一个可选的catch语句块会处理try语句块中抛出的异常。同时,一个finally语句块会被执行,无论一个异常是否被抛出。 |
Void |
用在Java语言的方法声明中说明这个方法没有任何返回值。"void"也可以用来表示一句没有任何功能的语句。 |
volatile |
用在变量的声明中表示这个变量是被同时运行的几个线程异步修改的。 |
while |
用来定义一段反复执行的循环语句。循环的退出条件是while语句的一部分。 |
java基础之基础语法详录(一)的更多相关文章
- java基础之基础语法详录
[前言] java的语法先从基础语法学,Java语言是由类和对象组成的,其对象和类又是由方法和变量组成,而方法,又包含了语句和表达式. 对象:(几乎)一切都是对象,比如:一只熊猫,他的外观,颜色,他在 ...
- Java基础-面向接口编程-JDBC详解
Java基础-面向接口编程-JDBC详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.JDBC概念和数据库驱动程序 JDBC(Java Data Base Connectiv ...
- Java基础之基础语法
前言:Java内功心法之基础语法,看完这篇你向Java大神的路上又迈出了一步(有什么问题或者需要资料可以联系我的扣扣:734999078) 一个Java程序可以认为是一系列对象的集合,而这些对象通过调 ...
- Java网络编程和NIO详解开篇:Java网络编程基础
Java网络编程和NIO详解开篇:Java网络编程基础 计算机网络编程基础 转自:https://mp.weixin.qq.com/s/XXMz5uAFSsPdg38bth2jAA 我们是幸运的,因为 ...
- java基础(3)--详解String
java基础(3)--详解String 其实与八大基本数据类型一样,String也是我们日常中使用非常频繁的对象,但知其然更要知其所以然,现在就去阅读源码深入了解一下String类对象,并解决一些我由 ...
- Java入门 - 语言基础 - 03.基础语法
原文地址:http://www.work100.net/training/java-basic-syntax.html 更多教程:光束云 - 免费课程 基础语法 序号 文内章节 视频 1 第一个Jav ...
- Java 笔试面试 基础篇 一
1. Java 基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法, 线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java& ...
- JVM 内部原理(七)— Java 字节码基础之二
JVM 内部原理(七)- Java 字节码基础之二 介绍 版本:Java SE 7 为什么需要了解 Java 字节码? 无论你是一名 Java 开发者.架构师.CxO 还是智能手机的普通用户,Java ...
- JVM 内部原理(六)— Java 字节码基础之一
JVM 内部原理(六)- Java 字节码基础之一 介绍 版本:Java SE 7 为什么需要了解 Java 字节码? 无论你是一名 Java 开发者.架构师.CxO 还是智能手机的普通用户,Java ...
随机推荐
- LinkedHashMap遍历
第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Ma ...
- C++从string中删除所有的某个特定字符
C++中要从string中删除所有某个特定字符, 可用如下代码 str.erase(std::remove(str.begin(), str.end(), 'a'), str.end()); 其中, ...
- java_XML_比较【转】
JAVA解析XML的方式DOM.SAX.DOM4J.JDOM.StAX之详解与比较 1.各种方式的详解 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官 ...
- Visual Studio 2017 RC 初探安装
上次看到博客介绍 Visual Studio 2017 RC,看到其中一个改进是启动很快,这是一大进步,也是低配电脑的程序员的期望.不过还没体验,是驴是骡子拉出来看看,这不就开始下载. 1.打开官网: ...
- UIApplication 和 Appdelegate-----iOS
正文 一 UIApplication 1.一个UIApplication代表是一个应用程序,而且是单例的.一个程序也只能有一个UIApplication对象 2.获取UIApplication对象: ...
- php 引入文件 include 和require
php 如何引用文件? 先建一个php 文件,php文件名要和所建的类名相同, 然后直接在php 中用include("")/include"" 和requir ...
- mktime性能问题调查
一.问题提出 会议中有同学提到使用mktime遇到一些问题: 1) 设置tm_isdst后速度很慢 2) 设置TZ环境变量提速极大 所以想调查下具体情况. mktime真的这么慢?如果是,为什么? ...
- Baidu图表插件--Eharts使用(柱状图)
官网链接:http://echarts.baidu.com/index.html 官网的demo,api都很详细:我就分享下我的学习步骤 首先定义一个显示图标的区域: <div id=" ...
- Kickstart Practice Round 2017 Google
Problem B. Vote A and B are the only two candidates competing in a certain election. We know from po ...
- 使用splice实现高效的代理服务器
很多网络应用场景下, 当原设备与目标设备无法直接建立连接时,这时就需要一台代理服务器进行中转.代理服务器只需要将来自源设备的报文 原封不动的转发给目标设备,而并不需要知道报文的具体内容.在这种情况下, ...