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. iOS小技巧 - 如何生成范围随机数

    生成[0, N-1]的随机数 NSUInteger r = arc4random_uniform(N); 生成[1, N]的随机数 NSUInteger r = arc4random_uniform( ...

  2. yum是什么?(linux命令)

    一. yum是什么 yum = Yellow dog Updater, Modified 主要功能是更方便的添加/删除/更新RPM包. 它能自动解决包的倚赖性问题. 它能便于管理大量系统的更新问题 注 ...

  3. 利用问答机器人API开发制作聊天类App

    缘起 很久没写项目了,所以单纯的想练练手,正好看到有问答机器人的接口,想到之前也做过聊天项目,为什么不实验一下呢.当然也是简单调用接口的项目,并没有真正的完成问答的算法等等.业余项目,功能不齐全,只实 ...

  4. Linux /bin, /sbin, /usr/bin, /usr/sbin 区别(转)

    在linux下我们经常用到的四个应用程序的目录是:/bin./sbin./usr/bin./usr/sbin    bin:  bin为binary的简写主要放置一些系统的必备执行档例如:cat.cp ...

  5. 【Python】help与dir的用法

    当你给dir()提供一个模块名字时,它返回在那个模块中定义的名字的列表.当没有为其提供参数时, 它返回当前模块中定义的名字的列表. 如果您需要快速获取任何的Python函数或语句的信息,那么您可以使用 ...

  6. Lomboz插件的介绍 下载 安装 问题

    http://www.blogjava.net/javaandcc/articles/251334.html Lomboz是Eclipse的一个主要的开源插件(open-source plug-in) ...

  7. sql笔记 获取指定数据库下的所有表

    SELECT Name FROM 数据库名称..SysObjects Where XType='U' ORDER BY Name XType='U' 标识查询用户创建的表 S为系统创建的表

  8. 将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1

    主要升级步骤如下: 将 .csproj 项目文件中的 target framework 改为 netcoreapp2.1 <TargetFramework>netcoreapp2.1< ...

  9. paho-mqtt 学习笔记

    Installation The latest stable version is available in the Python Package Index (PyPi) and can be in ...

  10. 利用python拼接图片

    问题描述: 将16张图片拼接成4x4的图片, 且不改变每单张图片的像素值. 代码如下: import os from PIL import Image path = '/share1/home/con ...