一、 Java语言概述

  • 语言:是人与人之间用于沟通的一种方式。

    • 例如:中国人与中国人用普通话沟通。而中国人要和英国人交流,就要学习英语。
  • 计算机语言(编程语言):
    • 人与计算机交流的方式。如果人要与计算机交流,那么就要学习计算机语言。计算机语言有很多种,如:C,C++,Java,PHP等。

二、Java程序运行机制

1、核心机制—Java虚拟机(Java Virtual Machine)

  • JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。
  • 负责执行指令,管理数据、内存、寄存器。
  • JVM 用于运行 Java 应用程序
  • 对于不同的平台,有不同的虚拟机。
  • Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”。

2、核心机制—垃圾回收(Garbage Collection)

  • 垃圾回收:将不再使用的内存空间进行回收。
  • 在 C/C++ 等语言中,由程序员负责回收无用内存。
  • Java 不需要程序员负责回收无用的内存:它提供一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时,检查并释放那些可被释放的存储空间。
  • 垃圾回收在 Java 程序运行过程中自动进行,程序员无法精确控制和干预。

三、JDK和JRE(JDK包含JRE)

1、JDK(完成 java 程序的开发)

  • 常用工具

    • javac 是用来编译源代码的命令。
    • java 是用于执行类文件的命令,而类文件将在 Java 虚拟机中运行类。
    • appletviewer 命令允许在万维网浏览器的环境之外运行 Applet。
  • 安装
    • bin:一些执行文件,Java的编译器、解释器和工具。
    • demo:各种演示的实例。
    • lib:保存库文件。
    • include:Win32子目录,都是本地方法文件。
    • jre:Java程序运行环境的根目录。

2、JRE(运行开发好的 Java 应用程序)

  • 包含:

    • Java虚拟机(JVM:Java Virtual Machine)
    • Java 程序所需的核心类库等,

附:如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。

四、Java语言的特点

1、特点

  • 面向对象(主要特点)
  • 简单性
  • 分布式与安全性
  • 解释和编译特性
  • 多线程
  • 动态执行
  • 自动废区回收性
  • 丰富的API文档和类库
  • 健壮性
  • 跨平台性

2、两个基本概念:

  • 对象

3、三大特性:

  • 封装
  • 继承
  • 多态

五、Java 的API文档

  API (Application Programming Interface,应用程序编程接口)是 Java 提供的基本编程接口。

  Java语言提供了大量的基础类,因此 Oracle 也为这些基础类提供了相应的API文档,用于告诉开发者如何使用这些类,以及这些类里包含的方法。

六、Java开发环境的配置

1、系统环境变量的设置

  • 定义:

    环境变量是包含关于系统及当前登录用户的环境信息的字符串,一些程序使用此信息确定在何处放置和搜索文件。

  • JDK相关的环境变量

    • path:告诉操作系统到哪里去查找所需要的执行的文件
    • classpath:告诉JDK 工具到哪里去查找类文件(.class 文件)。

2、环境变量Path的设置

  • 我的电脑→属性→高级系统设置→系统属性→环境变量→选中系统环境变量path→编辑按钮→对环境变量path进行修改→添加“;c:\java\jdk7\bin”→确定

3、环境变量classpath的设置

  如果环境变量中不存在该变量,则新建它,如果存在则编辑它. 在classpath对应的变量值中添加Java类文件(.class 文件)所在的路径,假定要用到的类文件存放在D:\JavaTest目录下,把D:\JavaTest添加到变量值对应的编辑框中,然后单击“确定”按钮,即可完成对classpath环境变量的设置。

七、一个简单Java应用程序---Hello Word

【例】编程输出字符串:Hello world!

public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello world!");
}
}

说明:

  • 存储文件时源文件的扩展名必须为Java,且源文件名必须与程序中声明为public class的类的名字完全一致(包括大小写一致)。
  • 程序中public class HelloWorld声明要建立一个名为HelloWorld的类,关键字class说明一个类声明的开始。类声明由类头和类体组成,类体部分的内容由一对大括号括起来,在类中不能嵌套声明其它类。类体内容包括属性和方法,具体内容将在在第3章中介绍。
  • Java应用程序可以由若干类组成,每个类可以定义若干个方法。但其中必须有一个类中包含有一个且只能有一个public static void main(String args[])方法,main是所有Java应用程序执行的入口点,当运行Java应用程序时,整个程序从main方法开始执行。
  • System.out是Java提供的标准输出对象,println是该对象的一个方法,用于向屏幕输出。

八、注意点

  • Java源文件以“java”为扩展名。源文件的基本组成部分是类(class),如本类中的HelloWorld类。
  • 一个源文件中最多只能有一个public类。其它类的个数不限,如果源文件包3)含一个public类,则文件名必须按该类名命名。
  • Java应用程序的执行入口是main()方法。它有固定的书写格式:public static void main(String[] args)  {...}
  • Java语言严格区分大小写。
  • Java方法由一条条语句构成,每个语句以“;”结束。
  • 大括号都是成对出现的,缺一不可。

九、面试题

  • Java为什么可以跨平台:

    • 在不同的操作系统下都有不同的虚拟机,Java将源程序转化为与平台无关的class的字节码文件。

漫步Java------初识java的更多相关文章

  1. Personal Learning Path of Java——初识Java

    初识Java 在我个人看来,Java是一门高大上的面向编程语言,这也是Java吸引我的地方.在自学Java之前,我在学校大概学过了一些C语言的知识,在学校学的那点C语言纯属是拿来打基础用的,大概了解了 ...

  2. Java - 初识Java

    Java是一种跨平台的面向对象的程序设计语言. 区分大小写: 标点符号为英文: 强类型语言,在Java中存储的数据,必须在编译时确定其类型: Java版本 Java按应用范围分为3个版本,即Java ...

  3. Java初识与配置环境

    Java初识 Java简介 Java是一门面向对象的程序设计语言.功能强大并且简单易用,极好的实现了面向对象理论.允许程序以类似人类的思维方式进行复杂的编程. Java具有简单性.面向对象.分布式.健 ...

  4. 002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介

    002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介 学习Java的基础语法 Java是一门编程语言,学习的逻辑其实和现实世界的语言是一样的,需要了 ...

  5. 初识Java

    Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以极强的安全性.平台无关性.硬件结构无关性.语言简洁.面向对象的特点,在网络编程语言中占据了无可比拟的优势 ...

  6. Java初识

    基础概念 特点: 完全面向对象,动态 解释性,简单.易移植,跨平台 安全健壮,高性能 多线程,分布式 三种核心机制: Java虚拟机 Java Virtual Machine 垃圾收集机制 Garba ...

  7. SSH 框架学习之初识Java中的Action、Dao、Service、Model-收藏

    SSH 框架学习之初识Java中的Action.Dao.Service.Model-----------------------------学到就要查,自己动手动脑!!!   基础知识目前不够,有感性 ...

  8. Java 面向对象编程——第一章 初识Java

      第一章    初识Java 1.  什么是Java? Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以其强安全性.平台无关性.硬件结构无关性.语言简 ...

  9. JAVA 初识类加载机制 第13节

    JAVA 初识类加载机制 第13节 从这章开始,我们就进入虚拟机类加载机制的学习了.那么什么是类加载呢?当我们写完一个Java类的时候,并不是直接就可以运行的,它还要编译成.class文件,再由虚拟机 ...

  10. java——初识

    java是现在最火的高级编程语言之一,功能强,应用广. java可以做什么? 1. 开发桌面应用程序 2. 开发面向Internet的应用程序 开发java程序的基本步骤: 1. 编写源程序:mypr ...

随机推荐

  1. CentOS6.8下实现配置配额

    CentOS6.8下实现配置配额 Linux系统是支持多用户的,即允许多个用户同时使用linux系统,普通用户在/home/目录下均有自己的家目录,在默认状态下,各个用户可以在自己的家目录下任意创建文 ...

  2. World Tour CodeForces - 667D (bfs最短路)

    大意: 有向图, 求找4个不同的点ABCD, 使得d(A,B)+d(D,C)+d(C,A)最大

  3. 373. Find K Pairs with Smallest Sums (java,优先队列)

    题目: You are given two integer arrays nums1 and nums2 sorted in ascending order and an integer k. Def ...

  4. [Fiddler] ReadResponse() failed: The server did not return a complete response for this request. Server returned 0 bytes.

    待解决 [Fiddler] ReadResponse() failed: The server did not return a complete response for this request. ...

  5. 【PowerDesigner】【6】Table视图同时显示Code和Name

    效果图: —————————————————————— 步骤: 文字版: 1,顶部工具栏Tools→Display Preference 2,Columns→List columns右侧按钮 3,勾选 ...

  6. vue-navigation 实现前进刷新,后退不刷新

    vue-navigation GitHub地址 导航默认行为类似手机APP的页面导航(A.B.C为页面): A前进到B,再前进到C: C返回到B时,B会从缓存中恢复: B再次前进到C,C会重新生成,不 ...

  7. ActiveMQ Advisory Message

    http://activemq.apache.org/advisory-message.html ActiveMQ broker 内部维持了一些 topic,保存了一些系统信息,客户端可以订阅这些 t ...

  8. Python3+telnetlib实现telnet客户端

    一.程序要点说明 python实现telnet客户端的六个关键问题及其答案是: 使用什么库实现telnet客户端----telnetlib 怎么连接主机----两种方法,一种是在实例化时传入ip地址连 ...

  9. 反向代理/负载均衡/session/cookie

    正向代理:客户端将流量重定向到burpsuite等软件或连接到VPN再访问服务器而不是直接访问服务器的场景.流量流动方向是真正机器--代理服务器.正向代理又称代理.普通代理. 反向代理:服务器端使用反 ...

  10. import 和 from … import 模块的变量、方法引用差异

    import 和 from … import 模块的变量.方法引用差异 还是上面例子中的模块 support.py: def print_func( par ): print "Hello ...