Java StuNote 1
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的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- Java多线程基础学习(二)
9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...
- Java多线程基础学习(一)
1. 创建线程 1.1 通过构造函数:public Thread(Runnable target, String name){} 或:public Thread(Runnable target ...
随机推荐
- iOS小技巧 - 如何生成范围随机数
生成[0, N-1]的随机数 NSUInteger r = arc4random_uniform(N); 生成[1, N]的随机数 NSUInteger r = arc4random_uniform( ...
- yum是什么?(linux命令)
一. yum是什么 yum = Yellow dog Updater, Modified 主要功能是更方便的添加/删除/更新RPM包. 它能自动解决包的倚赖性问题. 它能便于管理大量系统的更新问题 注 ...
- 利用问答机器人API开发制作聊天类App
缘起 很久没写项目了,所以单纯的想练练手,正好看到有问答机器人的接口,想到之前也做过聊天项目,为什么不实验一下呢.当然也是简单调用接口的项目,并没有真正的完成问答的算法等等.业余项目,功能不齐全,只实 ...
- Linux /bin, /sbin, /usr/bin, /usr/sbin 区别(转)
在linux下我们经常用到的四个应用程序的目录是:/bin./sbin./usr/bin./usr/sbin bin: bin为binary的简写主要放置一些系统的必备执行档例如:cat.cp ...
- 【Python】help与dir的用法
当你给dir()提供一个模块名字时,它返回在那个模块中定义的名字的列表.当没有为其提供参数时, 它返回当前模块中定义的名字的列表. 如果您需要快速获取任何的Python函数或语句的信息,那么您可以使用 ...
- Lomboz插件的介绍 下载 安装 问题
http://www.blogjava.net/javaandcc/articles/251334.html Lomboz是Eclipse的一个主要的开源插件(open-source plug-in) ...
- sql笔记 获取指定数据库下的所有表
SELECT Name FROM 数据库名称..SysObjects Where XType='U' ORDER BY Name XType='U' 标识查询用户创建的表 S为系统创建的表
- 将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1
主要升级步骤如下: 将 .csproj 项目文件中的 target framework 改为 netcoreapp2.1 <TargetFramework>netcoreapp2.1< ...
- paho-mqtt 学习笔记
Installation The latest stable version is available in the Python Package Index (PyPi) and can be in ...
- 利用python拼接图片
问题描述: 将16张图片拼接成4x4的图片, 且不改变每单张图片的像素值. 代码如下: import os from PIL import Image path = '/share1/home/con ...