Java作为一种面向对象语言。支持以下基本概念:

  • 多态
  • 继承
  • 封装
  • 抽象
  • 对象
  • 实例
  • 方法
  • 重载

基础语法:

一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。以下概念:

  • 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
  • :类是一个模板,它描述一类对象的行为和状态。类名首字母一般大写。
  • 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
  • 实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。

编写Java程序时,应注意以下几点:

  • 大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hello是不同的。
  • 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
  • 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
  • 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java是大小写敏感的),文件名的后缀为.java。(如果文件名和类名不相同则会导致编译错误)。
  • 主方法入口:所有的Java 程序由public static void main(String []args)方法开始执行。

标识符:类名、变量名以及方法名都被称为标识符。

  • 合法标识符举例:age、$salary、_value、__1_value
  • 非法标识符举例:123abc、-salary

修饰符:

  • 访问控制修饰符 : default, public , protected, private
  • 非访问控制修饰符 : final, abstract, strictfp

变量:

  • 局部变量
  • 类变量(静态变量)
  • 成员变量(非静态变量)

 枚举:枚举限制变量只能是预先设定好的值。使用枚举可以减少代码中的bug。例如,我们为果汁店设计一个程序,它将限制果汁为小杯、中杯、大杯。这就意味着它不允许顾客点除了这三种尺寸外的果汁:

class FreshJuice {
enum FreshJuiceSize{ SMALL, MEDIUM , LARGE }
FreshJuiceSize size;
} public class FreshJuiceTest {
public static void main(String []args){
FreshJuice juice = new FreshJuice();
juice.size = FreshJuice.FreshJuiceSize.MEDIUM ;
}
}

注意:枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。

java 注释: // 或者 /**/

继承:

  • 在Java中,一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。

  • 利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(subclass)。

接口:在Java中,接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。

接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。

Pre-article: Java 学习(1):java 运行& 环境配置

Next: Java 学习(3):java 对象和类

最新文章

  1. 剑指Offer:面试题30——最小的k个数(java实现)
  2. MySQL中的增删改查
  3. 【BZOJ】【3676】【APIO2014】回文串
  4. C# - 集合类 - 集合类型
  5. springMVC获取数据--注意post方法会出现中文乱码问题
  6. Spring基础学习(一)—初识Spring
  7. Codeforces 890A - ACM ICPC 暴力
  8. ACTION_NAME等常量 不能在模板里直接取值?
  9. socket网络编程-----I/O复用之poll函数
  10. 使用阿里云OSS,上传图片时报错:java.lang.ClassNotFoundException:org.apache.http.ssl.TrustStrategy
  11. java日志的相关配置文件知识
  12. Docker安装和使用(转)
  13. Linux磁盘格式化
  14. UIView的背景颜色
  15. eclipse 使用Maven deploy命令部署构建到Nexus
  16. HotSpot JVM常用参数(选项)设置
  17. hihocoder 1513 小Hi的烦恼——bitset
  18. Centos7 Zookeeper 集群安装
  19. Android -- SlidingMenu
  20. [Ubuntu] sogou中文输入法安装

热门文章

  1. CPP-STL:vector中的size和capacity
  2. java基础—注解annotation
  3. VueJS坎坷之路111---_self.$scopedSlots.default is not a function
  4. ES6_Promise 对象 阮一锋
  5. cnpm 莫名奇妙bug 莫名奇妙的痛
  6. kvm笔记
  7. Your Ride Is Here
  8. tomcat关闭钩子
  9. pandas中的随机排序和抽样
  10. MySQL查询显示连续的结果