`
javaflex
  • 浏览: 80466 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Java学习笔记 之 基本概念

阅读更多

一、       基本介绍及环境搭建

1 Java 的特点

       Java tutorils 是这么描述的

The Java programming language is a high-level language that can be characterized by all of the following buzzwords:

  • Architecture neutral
  • Portable
  • High performance
  • Robust
  • Secure

1.  Simple 简单的: java 里面去掉了 C++ 里面的对指针的操作,引用里面也保存了指针的地址,相对 C++ 中的指针弱化了,垃圾系统自动处理; C++ 中的垃圾要自己去 destroy ,这一点 java 虚拟机会自动去收集垃圾

2.  Object oriented 面向对象的: java 是一门完全面向对象的语言,不支持 C 语言中面向过程的编程。

3.  Distributed 分布式的: java 中包含了一个支持 HTTP FTP 等基于 TCP/IP 协议的子库, java 应用程序通过 URL 打开网络上得资源和访问本地资源一样方便快捷,为分布式的环境提供了先天的优势。

4.  Multithread 多线程的: java 提供的多线程可以允许程序同时执行几个任务,这样就会有更好的交互性,在用户体验上要比单线程好

5.  Dynamic 动态的:动态特性是其面向对象设计方法的发展,允许程序动态的载入运行过程中所需要的类,这是 C++ 语言在面向对象的程序设计中无法实现的。

6.  Architecture neutral 结构中立的: java 的目的是支持到部署到异构的网络环境。在这样的环境下,应用程序必须保证在各种平台上运行,在不同的硬件平台上必须支持不同的操作系统,并能与多种语言相互操作。为了适应环境的多样性, java 编译器为我们生成结构中立的字节码文件。 Class

7.  Portable 便携的:

8.  High performance 高性能:性能始终是一个被考虑的因素, java 平台实现的优越的性能,虚拟机直接将字节码翻译成机器码。

9.  Robust 健壮的: java 检查系统在编译和运行时的异常,类型检查使很多错误能够早期发现,摒弃了指针操作,减少了内存操作的可能性。

10.              Secure 安全的:提供了广泛的编译时检查 运行时检查,引导程序员养成良好的变成习惯。内存管理方式非常简单

2 Jdk/jre/jvm

jdk:java developer’s kit java 开发工具包)包含了 jre

jre java runtime environment java 运行环境)能够运行 java 环境所需要得环境,一般服务器安装 jre 就可以了,无需 jdk Jre 中包含了 jvm

jvm java virtual machine java 虚拟机)

3 javase/javame/javaee

javase :java 标准平台, javaee 基础内容

javame java 嵌入式平台

javaee java 企业级平台

4 、安装开发环境

1. 下载 jdk http://www.oracle.com/technetwork/java/javase/downloads/index.html

2. 傻瓜式安装

3. 环境变量配置

       Windows 环境下:我的电脑右键属性高级环境变量,新建

       JAVA_HOME:jdk 安装目录

       CLASSPATH:.

       PATH:$JAVA_HOME/bin

配置完成后在 CMD 中敲 javac 试一下看有没有成功

5 、第一个 java 程序

用记事本新建一文件 文件名为 MyFirstApp.java

手动敲入如下代码

public class MyFirstApp {// 注意必须和文件名一致

       public static void main(String[] args){

              System.out.println("hello world");

       }

}

编译:打开 cmd 窗口进入 myFirstApp.java 所在的文件夹

命令: javac MyFirstApp.java

如果没有任何东西输出则编译通过

会在同一个目录下生成一个 MyFirstApp.class 文件

执行: java MyFirstApp 注意后面没有扩展名,如果看见 hello world 在正常

 

说明

main 方法为 java 入口方法类似 BCB 中的 WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)

一个类中最多只有一个 main 方法

同一个文件中可以写多个类,但只能有一个是 public

例如:

public class MyFirstApp

{

              public static void main(String[] args){

                     String name="zhangsan";

                     new Second();// 实例化 Second

                     System.out.println("hello world:"+name);//+ 字符串连接

       }

}

class Second

{

       public Second(){

              System.out.println("second");

       }

} 编译后会多了一个 class 文件,说明一个类就会有一个 class 文件

 

Java 命令执行的过程:

1 、启动 jvm 2 、找所需要的 class 文件 3 、加载字节码文件到内存中 4 、找类的 main 方法

二、 java 基本概念

1 、包 工程过大,用来管理庞大的类文件,一般把类似的类放在一个包中

       语法: package 包名 位于 java 文件的最上面

       编译时注意要 javac –d MyFirstApp.java 这是会按照包名生成相应的路径文件夹

       运行时注意 要用 java 包名 + 类名

如果在 java 文件中用到了别的包中的类,这是我们需要用 import 关键字引进来,一般放在 package 下面

2 jar 命令

       把制定的 class 打为 jar

       jar cvf abc.jar dir

这样会把 dir 下面的内容打在名称为 abc.jar 的包中

如果在别的项目中想引用这个 jar ,在 classpath 中添加此 jar 文件即可

Jvm 查找类的顺序一般为 1 、当前目录 2 $JAVA_HOME/jre/lib/rt.jar 这也是我们不用把 rt.jar 配置在环境变量的原因 3 classpath 配置

3 、注释

       1 、单行注释 //

       2 、多行注释 /*  */

       3 、文档注释 /** */ 可以生成 html 帮助文档 javadoc a.java –d .\doc

4 jdk 基本包

       Java.lang 使用时不用引入

       java.awt javax.swing javax.awt.event// 图形界面包

       java.io javax.nio// 文件流

       java.net// 网络包

       java.util// 工具包

5 、编码习惯

       类、接口的首字符大写,如果由多个单词组成,各单词的首字母大写

       方法名、变量名首字母小写,多个单词首单词字母小写其余单词首字母大写

       常量名全部大写如果多个单词要用 _ 分割

       包名全部小写

标识符由字母 下划线 $ 数字组成,不能由数字开头 ( 这是语法 )

6 、基本数据类型

       boolean byte short char int doube long float

注意 String 不是基本数据类型

Java 中从低字节向高字节类型自动转换

       byte ->short ->int-> long-> float ->double

逆向过程需要强制转换但是精度会丢失

经典的类型提升的例子

public class ByteInt

{

       public static void main(String[] args){

              byte b=1;

              b++;

              System.out.println(b);

       }

}

public class ByteInt

{

       public static void main(String[] args){

              byte b=1;

              b=b+1;

              System.out.println(b);

       }

}

第二个则编译不通过

7 、数据类型分类

       1 基本类型 2 、引用类型 3 void 类型

引用类型存储的是对象在内存中的地址,栈负责给方法分配空间 堆负责给对象分配空间,如果一个引用不指向任何一个对象就会报空指针异常

8 、垃圾回收

如果一个对象没有任何的引用指向他,他就是一垃圾;

Jvm 虚拟机会自动释放它,如果 jvm 不能及时释放你可以用 System.gc() 提醒释放

8 、运算符 ( )

@author http://javaflex.iteye.com/

 

0
2
分享到:
评论

相关推荐

    Java学习笔记——良葛格

    "Java学习笔记——良葛格"是一份专为初学者设计的教程资料,由良葛格精心编写,旨在帮助读者掌握JDK5.0版本的Java基础知识。JDK(Java Development Kit)是Java开发的核心工具集,包含了编译器、调试器和运行环境等...

    Java学习笔记(必看经典).pdf

    本知识点的标题为“Java学习笔记(必看经典)”,意味着所整理的内容是针对Java初学者的一系列核心概念和原理的总结。 首先,面向对象编程是Java语言的核心,它与传统的面向过程编程有显著的不同。面向对象编程强调的...

    JAVA学习笔记 林信良

    《JAVA学习笔记》是林信良先生的一部深入浅出的Java编程教程,旨在帮助初学者和有一定经验的开发者巩固和提升Java编程技能。这本书涵盖了Java语言的基础到高级概念,是一份宝贵的自学资料。 首先,从基础部分开始,...

    java学习笔记markdown

    【Java学习笔记Markdown版】是针对Java初学者和进阶者的一份详尽教程,以Markdown格式编写,便于阅读和整理。Markdown是一种轻量级的标记语言,它允许用户使用易读易写的纯文本格式编写文档,然后转换成结构化的HTML...

    Java基础 学习笔记 Markdownr版

    本学习笔记主要涵盖了Java的基础知识,包括面向对象、集合、IO流、多线程、反射与动态代理以及Java 8的新特性等方面,旨在帮助初学者或有经验的开发者巩固和提升Java编程技能。 1. 面向对象(OOP):Java的核心是...

    JAVA个人学习笔记

    JAVA学习笔记是面向对象编程语言的学习笔记,涵盖了JAVA的基本概念、面向对象编程思想、类和对象的概念、实例变量和局部变量的区别、方法的定义和调用、类型转换、精度问题、移位问题、switch语句的使用等内容。...

    Java学习笔记.pdf

    Java学习笔记.pdf Java 是一种广泛应用的编程语言,它的开发环境、语言特点、基础语法等方面的知识是初学者必须掌握的。本资源提供了一个系统的 Java 学习笔记,涵盖了 Java 基础、面向对象、Java SE 核心等方面的...

    Java学习笔记及心得

    总结以上知识点,Java学习笔记及心得主要涵盖了Java的环境配置、基本语法、面向对象编程的概念和实践等方面的内容。这些知识是Java编程入门和进一步学习的基础,为深入学习Java语言和理解其面向对象的特性提供了扎实...

    韩顺平编写的java学习笔记(全)

    ### 韩顺平编写的Java学习笔记概览 #### Java平台分类与运行机制 - **J2SE(Java 2 Platform, Standard Edition)**: 标准版Java开发平台,适用于桌面应用程序开发。 - **J2EE(Java 2 Platform, Enterprise ...

    Java学习笔记PPT

    这份"Java学习笔记PPT"是针对Java2版本的学习资源,旨在帮助初学者或有一定基础的开发者深入理解Java的核心概念和应用。 在Java学习的初期,掌握基本语法是至关重要的。Java的语法与C++有诸多相似之处,但更加强调...

    java学习笔记.doc

    Java 学习笔记 本资源摘要信息涵盖了 Java 编程语言的基础知识,着重于面向对象编程(OOP)的概念和实现。下面是该资源的详细知识点: 1. 面向对象编程(OOP)的基本概念: * 对象: everything is an object...

    《Java学习笔记》

    这份《Java学习笔记》包含了丰富的知识内容,旨在帮助学习者全面掌握Java编程技术。笔记分为7个PDF部分,覆盖了从基础到高级的Java编程概念。 1. **Java基础知识**:这部分内容通常包括Java的历史背景、环境配置、...

    java学习笔记(全)

    总的来说,这份“Java学习笔记(全)”是一份全面的学习资源,不仅覆盖了Java语言的基本知识,还包含了丰富的Java Web开发内容。无论是对新手还是有一定经验的开发者来说,都是宝贵的参考资料。通过系统地学习和实践...

    良葛格JAVA 学习笔记

    《良葛格JAVA 学习笔记》是由知名IT专家林信良,网名“良葛格”,在台湾大学电机工程学系的深厚学术背景基础上,结合其作为SUN教育训练中心讲师的丰富教学经验编写的。他的著作还包括《Spring 技术手册》,并且他...

    《java学习》-java学习笔记.zip

    这份《java学习》笔记包含了多个核心主题,旨在帮助初学者和有经验的开发者深入理解和掌握Java技术。 1. **正则表达式(正则.md)**: 正则表达式在Java中用于文本匹配和搜索,是处理字符串的强大工具。Java提供了...

    Java学习笔记(源码)

    【Java学习笔记(源码)】是一份详细记录了Java编程语言学习过程的资源集合,包含实际的源代码示例。这份笔记旨在帮助初学者和有一定经验的开发者深入理解和掌握Java语言的核心概念、语法以及常见应用。以下是笔记中...

    Java学习笔记整理

    这些学习笔记将带你深入了解Java的核心概念,特别是面向对象编程和集合框架。以下是对每个文件内容的详细阐述: 1. **Day0804_HashMap的基本使用.docx**:HashMap是Java集合框架中的一个重要组件,它提供了键值对的...

    java学习笔记(一个初学者的java学习笔记)

    ### Java学习笔记——基础知识详解 #### 一、Java基本数据类型及内存占用 Java作为一种广泛使用的编程语言,其基础数据类型对于理解程序的行为至关重要。Java提供了八种基本数据类型,分为数值型、字符型和布尔型...

    良葛格java学习笔记

    通过学习《良葛格java学习笔记》,读者不仅可以掌握Java编程的基本技能,还能了解实际开发中的一些常见问题和解决方案。这是一份非常实用的学习资料,适合初学者系统学习Java,并为后续的进阶学习打下坚实基础。

Global site tag (gtag.js) - Google Analytics