Java的工作方式

你要做的事情就是会编写源代码

Java的程序结构

类存于源文件里面

方法存在类中

语句存于方法中

剖析类

当Java虚拟机启动执行时,它会寻找你在命令列中所指定的类,然后它会锁定像下面这样一个特定的方法:

public static void main(String[] args){
//code
}

接着java虚拟机就会执行main方法在花括号间的函数所有指令。每个Java程序最少都会有一个类以及一个main()。每个应用程序只有一个main()函数

编写带有main()的类

在Java中的所有东西都会属于某个类。源文件为.java,编译之后成为新的类文件.class ,真正被执行的是类。

总之main()就是程序的起点。不管你的程序有多大(不管有多少个类)一定会有一个main()来作为程序的起点。

QAQ

为何所有的东西都得包含在类中?

因为Java是面对对象的语言,它不像以前的程序语言那样。类是对象的蓝图,而Java中的绝大多是东西都是对象。

每个类都需要加上一个main()吗?
一个程序只要一个main来作为运行。

其他语言可以用整数类型(0代表)来做判断,Java里面也可以么?

不行,Java中的integer与boolean两种类型并不相容。

专家术语学习机

package chapter1;

public class PhraseOMatic {

    public static void main(String[] args) {
String[] wordListOne = { "24/7", "multiTier", "30,000 foot", "B-to-B",
"win-win", "front-end", "web-based", "parvasive", "smart",
"sixsigma", "critical-path", "dymatic" }; String[] wordListTwo = { "empowered", "sticky", "value-added",
"oriented", "centric", "distributed", "clustered", "branded",
"outside-the-box", "positioned", "networked", "focused",
"leveraged", "aligned", "targeted", "shared", "cooperative",
"accelerated" }; String[] wordListThree = { "process", "tippingpoint", "solution",
"architecture", "core competency", "strategy", "mindshare",
"portal", "space", "vision", "paradigm", "mission" };
int oneLength = wordListOne.length;
int twoLength = wordListTwo.length;
int threeLength = wordListThree.length; int rand1 = (int) (Math.random() * oneLength);
int rand2 = (int) (Math.random() * twoLength);
int rand3 = (int) (Math.random() * threeLength); String phrase = wordListOne[rand1] + " " + wordListTwo[rand2] + " "
+ wordListThree[rand3]; System.out.println("What we need is a " + phrase);
} }

random()方法返回介于0到1之间的值。

编译器与JVM谁比较重要?

编译器就是把源码编译成二进制代码,即字节码,并检查语法错误,程序员不可能自己去写二进制的代码,所以需要编译器。Java是个强类型的语言,这代表编译器不能容许变量保存类型的数据,这是很关键的类型安全性功能,编译器能让大部分的错误在到你那边之前就被抓到,有些数据类型的错误会在运行时发生,但这也是为了要容许动态绑定这样的功能。Java可以在执行期引起连程序员也没有预期会碰到的类型,所以我编译器保留一些运用性,编译器的工作就是确保铁定不能跑的东西不会过关。

但是如果没有JVM Java程序就无法启动

【Head First Java 读书笔记】(一)基本概念的更多相关文章

  1. head first java读书笔记

    head first java读书笔记 1. 基本信息 页数:689 阅读起止日期:20170104-20170215 2. 标签 Java入门 3. 价值 8分 4. 主题 使用面向对象的思路介绍J ...

  2. think in java 读书笔记 3 —— 数据报

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 概要 1. 数据报基本知识 2 ...

  3. think in java 读书笔记 2 —— 套接字

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 概要 1. 套接字基本知识 2 ...

  4. think in java 读书笔记 1 ——移位

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 在Think in Java中 ...

  5. Thinking In Java读书笔记--对象导论

    Thinking In Java读书笔记--对象导论[对象]服务提供者==>将对象看做一个服务提供者[程序员分类][类创造者]/[客户端程序员] [访问控制存在的原因?][1]客户端程序员无法触 ...

  6. Java读书笔记1

    Java逍遥游记读书笔记 前言 必须先来一句,这是入门级别,高手勿喷~ 写Android的时候总有一些语句不是很理解,其实大部分是Java的内容,所以想系统的学下Java. 这本书——<Java ...

  7. java读书笔记二

    这是我的一些读书笔记: 我研究了一下面向对象: 面向对象符合人类看待事物的一般规律,对象的方法的实现细节是包装的,只有对象方法的实现者了解细节 我觉得面向过程是由过程.步骤.函数组成,过程是核心,面向 ...

  8. Effective Java读书笔记完结啦

    Effective Java是一本经典的书, 很实用的Java进阶读物, 提供了各个方面的best practices. 最近终于做完了Effective Java的读书笔记, 发布出来与大家共享. ...

  9. 【Head First Java 读书笔记】(二)类与对象

    前篇当中,代码都放在main()里面,那根本不是面向对象的做法. 椅子大战(对象如何改变你的一生) 程序规格: 在图形接口画出四方形,圆形和三角形,当用户点选图形时,图形需要顺时针转360度并依据形状 ...

随机推荐

  1. .NET泛型与非泛型的问题

    泛型集合通常情况下,建议您使用泛型集合,因为这样可以获得类型安全的直接优点而不需要从基集合类型派生并实现类型特定的成员.下面的泛型类型对应于现有的集合类型:1.List 是对应于 ArrayList ...

  2. Backit轻松为您的网站创建备份

    随着日益复杂,备份数据,已成为一个经验法则,为维护数据库和重要的企业信息化的大公司和企业.在一个不幸的灾难的情况下,很多企业无法恢复他们的数据,这进一步增加了在他们对所有盈利和亏损的同时,作为他们的电 ...

  3. composer.phar的作用和安装laravel5.5.4 和 vendor目录

    composer.phar有什么作用 是 PHP 用来管理依赖(dependency)关系的工具.你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖 ...

  4. centOS下 JDK的三种安装方式

    由于各Linux开发厂商的不同,因此不同开发厂商的Linux版本操作细节也不一样,今天就来说一下CentOS下JDK的安装: 方法一:手动解压JDK的压缩包,然后设置环境变量 1.在/usr/目录下创 ...

  5. 中小公司的Java工程师应该如何逆袭冲进BAT?

    (1)80% Java工程师都有的迷茫 这篇文章,跟大家聊一聊很多很多很多人问我的一个问题:中小公司的Java工程师应该如何规划准备,才能跳槽进入BAT这类一线互联网公司? 之所以我用了三个 “很多” ...

  6. C/S模式客户端连接服务器连接不上的问题

    C/S模式客户端连接服务器连接不上的问题 1.服务器电脑防火墙关闭 2.服务器端SQL SERVER2008R: 配置工具--SQL SERVER配置管理器 MSSQLSERVER协议.客户端协议(S ...

  7. MyBatis多表映射demo

    三个实体类,作者.文章和评论. public class Author { private int id; private String username; private String nickna ...

  8. phpStudy启动失败时的解决方法 提示缺vc9运行库

    问题描述: 问题产生原因分析: php5.3.5.4和apache都是用vc9编译,电脑必须安装vc9运行库才能运行. php5.5.5.6是vc11编译,如用php5.5.5.6必须安装vc11运行 ...

  9. [C#] 等待启动的进程执行完毕

    有能有时候我们启动了一个进程,必须等到此进程执行完毕,或是,一段时间, 关闭进程后再继续往下走. Example sample1 等待应用程序执行完毕 //等待应用程序执行完毕 private voi ...

  10. beijing

    #include<stdio.h> #include<string.h> #include<stdlib.h> #include<graphics.h> ...