zoukankan      html  css  js  c++  java
  • JAVA学习第一课(初识JAVA)

     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);

  • 相关阅读:
    顺序表
    顺序表实验2
    C艹不使用库函数简陋实现strlen
    数据结构化与保存
    爬取校园新闻首页的新闻
    网络爬虫基础练习
    词频统计
    组合数据类型练习,综合练习
    Python基础综合练习
    熟悉常用的Linux操作
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4216623.html
Copyright © 2011-2022 走看看