PS:退ACM集训队了,自己也疯玩了两天,后天就开学了,就正式大二了,该收收心好好学习啦          

                         

                                             JAVA概述

首先先复习一下基础常识:

1.软件开发

2.人机交互

3.经常使用的DOS命令

一、软件开发

什么是软件?

软件是一系列依照特定顺序组织的计算机数据和指令集合(指令:是处理数据的方式)

常见的软件有:系统软件(DOS、WIndows、Linux),应用软件(QQ、360、迅雷)

所以,软件开发就是指制作软件,将一系列的数据和集合组织起来

二、人机交互

软件使人和计算机更好的交互

交互方式:

1、图形化界面(Graphical User Interfac,简称GUI),通俗的说也就是我要打开QQ,肯定要双击QQ图标,我要删除一个目录,右键这个图标点删除,这些就是图形化界面操作

2、命令行方式(Graphical Line Interfac,简称CLI),最早期的操作系统DOS,里面没有图形化界面,你想进行什么操作,你必须把一个命令告诉计算机,当然它须要一个控制台,输入特定指令,所以必须记录一些命令

JAVA语言概述

java是由SUN在1995年推出,距今已有近20年的发展,JAVA是基于Internet的兴起,而越来越火。Java已经成为Web应用程序的首选语言。

JAVA特点:全然面向对象,安全,与平台无关。

JAVA语言的三种架构

1.J2EE(企业版)主要是开发企业环境下的应用程序。

2.J2SE(标准版)是其它两种架构的基础,主要开发一些主要的桌面应用,也就是我们在系统上做一些桌面小软件

3.J2ME(小型版)主要开发电子产品和嵌入式设备,比方手机游戏(当然在Android操作系统已经提供了一套开发工具,意味着能够选择Android开发方向,IOS软件开发,软件都一样,仅仅是操作系统不一样而已)

JAVA5.0后更名JAVAEE、JAVASE、JAVAME

JAVA被Oracle公司收购后,用JAVA连接Oracle,可能实现无缝连接,就不用安装一些驱动

无缝连接,在充分掌握系统的底层协议和接口规范的基础上,开发出与之全然兼容的产品。比方Windouws95和98,XP不是,XP是client

好好学JAVA,JAVA必火。

JAVA语言的跨平台特性:

所谓的平台,指的是操作系统平台,可是平台不是操作系统。

Windows系统前期主要应用C来编写,后期加入C++,不同的厂商推出的系统不同,所以在其系统上能够执行由C/C++编写的软件,可是其它语言就不能够,当然JAVA也不行。由于操作系统不同,其解析方式就不同。

JAVA语言就能够实行跨平台,用JAVA编写的软件就能够实如今Windows上执行,也能够在Linux上执行

由于JAVA有了JVM(JAVA虚拟机),JVM使JAVA实现了跨平台的特性,也就是JAVA具有良好的可移植性。

所以仅仅要在一个系统上安装JVM,那么JAVA就能够在不论什么一个系统上执行。



JDK和JRE

明白JAVA的JDK(JAVA开发工具包)、JRE(JAVA执行环境)

JRE:JVM + 类库

JDK:JRE + JAVA开发工具

依照需求,假设仅仅是单纯的执行JAVA程序,仅仅需安装JRE,假设还要开发JAVA程序,那么就装JDK。

使用JDK开发的JAVA程序,交给JRE来执行。

安装JDK与环境配置,连接:http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html

经典Hello Word



每一个一个Java程序,都必须有一个main方法,public static void main(String[] args):Java的执行顺序不是从上到下,而是先找到“public static void main(String[] args)”,这就好比一个程序执行的入口

public class Main //定义一个Main类,public使它的优先级上升,能够不写
{
public static void main(String[] args)//程序的入口
{
system.out.println("Hello Wprld");
//print加上ln,会使光标自己主动转到下一行
}
}

简单A+B

import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner cin = new Scanner(system.in);
int a,b;
a = cin.nextInt();
b = cin.nextInt();
System.out.println(a+b);
}
}

PS:Java的学习,主要还是靠多敲,多练习,不怕错

接一道JAVA面试题:问line10和line11有什么差别

import java.util.Scanner;

public class Main
{
public static void main(String[] args)
{
Scanner cin = new Scanner(System.in);
short a = 4;
a += 2;
a = a + 2; System.out.println(a);
cin.close();
}
}

4编译器,默认是十进制,占4个字节,a是short型占两个字节,赋值时,先推断3是否满足short的范围,满足,舍弃3前两个字节

+= 是赋值运算符,

line10:(正确)要知道为什么line10正确,就要知道short  a = 4为什么对,由于在赋值时,计算机会推断当前赋值给a的值是否满足short,所以+=相当于一步运算,仅仅是赋的不是=右边的值,是a本身和=右边值的和,会在底层推断其和是否满足short

line11,(错误),假设初始时a是short的极大值,那么在+4会超short范围。

解决方法:a = (short)(a+4);就可以

同理 byte也是一样

+=,是扩展的赋值运算符,它事实上隐含了一个强制类型转换

谨记一点:

a += 4;

不等于a = a + 4;

而是等价于 a = (a的数据类型)(a + 4);

JAVA学习第一课(初识JAVA)的更多相关文章

  1. Java学习笔记心得——初识Java

    初识Java 拿到这本厚厚的<Java学习笔记>,翻开目录:Java平台概论.从JDK到TDE.认识对象.封装.继承与多态...看着这些似懂非懂的术语名词,心里怀着些好奇与担忧,就这样我开 ...

  2. JAVA基础第一章-初识java

    业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 从今天开始,我将会持续更新java基础知识,欢迎关注. java的诞生 ...

  3. JAVA学习第一课-手工笔记

    JVM:JAVA虚拟机,JAVA核心,跨平台,作用是翻译. JRE:运行环境,包含JVM和运行的核心类库. JDK:全新开发使用,包含JRE,编译工具: 核心是JVM 以下是关系库 安装路径不要有空格 ...

  4. Java学习第一天

    Java学习第一天 对于网络管理员或者黑客必须知道的八个cmd命令 详情请参考:http://www.2cto.com/os/201608/533964.html          nbtstat  ...

  5. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  6. Java学习-027-JSON 之一 -- 初识

    通常,我们在生活中使用的应用产品(无论是 Web应用还是 App 应用),又或者我们平常的信息交流,均无可避免的存在着信息交互,在信息交互的过程中就有着信息载体的存在.那么,在我们熟知的网络应用产品中 ...

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

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

  8. 从.Net到Java学习第一篇——开篇

    以前我常说,公司用什么技术我就学什么.可是对于java,我曾经一度以为“学java是不可能的,这辈子不可能学java的.”结果,一遇到公司转java,我就不得不跑路了,于是乎,回头一看N家公司交过社保 ...

  9. 201671010140. 2016-2017-2 《Java程序设计》java学习第一周

       java学习第一周        本周是新学期的开端,也是新的学习进程的开端,第一次接触java这门课程,首先书本的厚度就给我一种无形的压力,这注定了,这门课程不会是轻松的,同时一种全新的学习方 ...

随机推荐

  1. HTML5 canvas易错点

    一.画布的默认宽高 <canvas id="myCanvas" style="border:1px solid black;"> 你的浏览器不支持h ...

  2. CreateFileMapping共享内存时添加Global的作用

    来源:http://www.cnblogs.com/elvislogs/articles/ShareMemory.html 通常使用CreateFileMapping建立共享内存时名称中没有加入&qu ...

  3. python3 模拟登录网站

    最近学习python,因经常登录公积金网站查看公积金缴存还款情况,so网上找了写脚本,修改了一下,方便获取网页中的数据. 使用谷歌浏览器F12查看登录请求内容 1.request header需要参数 ...

  4. uvalive5810 uva12368 Candles

    题意:每组数据给出n个数,每个数在1-100,问组成这些数的蜡烛的权值的最小值.权值=把选的蜡烛从大到小排列组成的数 组成方式:比如有1 3两个蜡烛 可以组成13(1和3)或4(1+3) 只有一个加号 ...

  5. ubuntu下编译内核驱动。

    目的: 1. 驱动热身.网上有很多类似的文章可供参考. 2. 在操作系统中, 编写这个设备的驱动. 3. 为写qemu的watchdog驱动练手. 有朋友问make的 watchdog驱动 需要什么准 ...

  6. c++基础 之 面向对象特征一 : 继承

    class Base { public: void f() { cout<<"void f()"<<endl<<endl; } void f(i ...

  7. Error pulling origin: error: The following untracked working tree files would be overwritten by...

    git在pull时,出现这样的错误的时候,可能非常多人进进行stash.相关stash的请看:Error pulling origin: error: Your local changes to th ...

  8. android 回调

    调函数(callback Function),顾名思义,用于回调的函数.  回调函数只是一个功能片段,由用户按照回调函数调用约定来实现的一个函数.回调函数是一个工作流的一部分,由工作流来决定函数的调用 ...

  9. android中退出当前应用程序的四种方法

    android中退出当前应用程序的四种方法 [IT168 技术]Android程序有很多Activity,比如说主窗口A,调用了子窗口B,如果在B中直接finish(), 接下里显示的是A.在B中如何 ...

  10. 关于在App_Code文件夹自定义类中Session无法使用

    由于前台页面需要调用App_Code中自定义类的函数,但在自定义类中找不到Session,解决方法如下: 新建一个类session,并自己定义函数GetSession(),引用命名空间 System. ...