1. JAVA语言历史

无心插柳柳成荫,有心栽花花不开。

JAVA由SUN Microsystem公司研发。

2. JAVA语言特点

a) 跨平台。一次编译。到处执行。

b) 速度慢。但非常稳定, 没有内存泄漏 (memory leakage),不easy出现错误。

c) 不适合对速度要求高的图形界面操作, 适合服务端应用。

C/S (Client/Server) -> B/S (Browser/Server)

3. JAVA编程一般运行流程

a) 编制JAVA源码文件 (*.java)

该文件为文本文件.

b) 编译

*.java -> *.class  (bytecode, 字节码, 其不是真正的X86机器语言。)

window平台下的JAVA编译器(compiler)是javac.exe.

c) 在JAVA虚拟机(JVM)中运行

(window平台下的JAVA虚拟机是java.exe)

争对详细的硬件CPU而言。字节码不是机器语言。

争对JVM而言。字节码就是其机器语言。

4. 理解JVM,理解跨平台

JVM: Java Virtual Machine

1) JVM像一个翻译,其把JAVA字节码实时翻译成相应硬件CPU的机器语言,由于有这么一个翻译的开销,所以JAVA执行速度较慢。

2) 一个JVM仅仅知晓一门硬件语言。所以不同的平台(CPU不同)将须要安装不同的JVM.

3) 由于JVM机制的存在。JAVA能够跨平台, JAVA的跨平台是建立在JVM不跨平台的基础上的。

4) 由于依靠JVM机制,JAVA执行速度慢。但稳定安全。

5. 了解JRE和JDK

JRE:  JAVA执行环境 (Java Runtime Environment)

由JVM加上一些执行类库(jar包)构成。

Jar: java archive (java类压缩包, 非常多非常多java类被压缩在一起而得到的.)

JDK:  JAVA开发人员套件(Java Development Kit)

由JRE,JAVA编译器,演示样例代码等构成。

假设仅仅是须要执行JAVA字节码文件,则仅仅须要JRE, 但假设你是JAVA程序猿。你则须要安装JDK.

6. 基本JAVA程序结构

a)  JAVA是纯面向对象编程的语言,处处都是class.

b)  JAVA的类名必须大写,符合驼峰命名法

c)  JAVA的类名与其所在的文件名称同样, 最好一个java文件一个类

d)  可运行的JAVA类有一main()方法作为入口点。

e)  JAVA变量名和方法名首字母小写,其它部分继续按驼峰命名法处理.

7. JAVA IDE

IDE=Integrated Development Environment

代码:

新建project:file — new —java project (新建javaproject) new —class

输出/cout = System.out.print() ; //若是println则表示换行

输入: Scaaner scanner = new Scanner (System.in) ; //扫描所输入的

int Num = scanner.nextInt();// 从终端输入的数字

bool型在java 写作boolean

java特色:一个大class里面非常多个函数,面向对象

若想在public static void main(String[] args) 里面调用别的函数,比如调用isPrim(),能够在外界将isPrim声明为static

就可直接 System.out.print(isPrim(num));

java包的概念:相对于命名空间。即namespace

之前学习C+对命名空间的理解是,公司里做项目时候,不同的人书写不同板块,命名空间相当于他们各自的塑料袋。把他们写的函数声明的所以变量写的内容 全放进塑料袋,取有可区分性的命名空间名字,可避免与他人反复,比如函数名同样,怎么推断调用的是哪个函数,通过命名空间这个问题就可迎刃而解。

java里面非常多包。包里有非常多class,class里面有非常多函数。能够在编程时候直接调用

数组:

存在越界情况,会报错

声明方法和曾经有所不同

Java StuNote 1的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  3. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  4. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  5. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  6. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  7. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  8. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

  9. Java多线程基础学习(一)

    1. 创建线程    1.1 通过构造函数:public Thread(Runnable target, String name){}  或:public Thread(Runnable target ...

随机推荐

  1. Anaconda 介绍及安装

    一.前言 Python易用,但用好却不易,其中比较头疼的就是包管理和Python不同版本的问题,特别是当你使用Windows的时候.为了解决这些问题,有不少发行版的Python,比如WinPython ...

  2. java源码阅读LinkedList

    1类签名与注释 public class LinkedList<E> extends AbstractSequentialList<E> implements List< ...

  3. NFSv4 mount incorrectly shows all files with ownership as nobody:nobody

    NFSv4 mount incorrectly shows all files with ownership as nobody:nobody   https://access.redhat.com/ ...

  4. 使用Faric+Git进行分布式代码管理

    Fabric是一个Python库,可以通过SSH在多个host上批量执行任务. 可以通过编写任务脚本,然后通过Fabric在本地就可以使用SSH在大量远程服务器上自动运行. 这些功能非常适合应用的自动 ...

  5. Agent是什么

    广义的Agent包括人类.物理世界的机器人和信息世界的软件机器人. 狭义的Agent专指信息世界中的软件机器人或称软件Agent. 1) 弱定义 Agent用来最一般地说明一个软硬件系统,具有四个特性 ...

  6. Excel中如何将时间戳转为时间?

    Unix时间戳转换Excel时间? Excel中如何将时间戳转为时间? Excel默认不支持Unix格式时间戳,这在导入数据时十分不便.可以用以下公式将时间戳转换成Excel格式的时间: =(x+8* ...

  7. [1-5] 把时间当做朋友(李笑来)Chapter 5 【小心所谓成功学】 摘录

    有一个事实非常简单,却令人难以接受.这世界上所有的资源并非平均分布在每一个人的身上,能够比较接近地表示这种分布情况的数学曲线叫做“正态分布曲线”(Normal Distribution Curve) ...

  8. MongoDB笔记(二):MongoDB下Shell的基本操作

    一.mongoDB与关系型数据库对比 对比项              mongoDB             关系型数据库(oracle.mysql) 表 集合List 二维表table 表的一行数 ...

  9. MVC中上传文件大小限制的解决办法

    在Web.Config文件中配置限制上传文件大小与时间. 需要在配置文件里面设置文件上传限定的两个属性值:maxAllowedContentLength,maxRequestLength 允许上传文件 ...

  10. ViewStub 的使用

    一.内容概述 举例说明ViewStub标签的使用 二.ViewStub类的文档说明及应用场举例 文档描述: A ViewStub is an invisible, zero-sized View th ...