Java语言概述 20131003

开头语:

开发领域,重要的编程语言基本都是C/C++,然后就是Java, C/C++就不用说了,另外掌握Java对你是有很大的帮助的,而且也会扩宽你的择业范围。同时很多网络编程、网站后台开发都是使用java 语言实现,此外Android实际上就是Java编程,所以在C/C++复习基本完成之后,复习一下Java,一起来吧!

1.java是一种简单、面向对象、分布式、解释型、健壮安全、可移植、性能优异、多线程的动态语言(在运行期间才将类加载到运行环境中)。

相对C++来说Java抛弃了C++的那些很少使用的难以理解的特性,如运算符重载、多继承、自动的强类型转转。而且Java不会使用指针,并且提供了自动的垃圾回收机制,这样程序员不会在为内存管理而担忧。

面向对象:类、接口、继承等等支持class 的单继承和接口的多继承,全面支持动态绑定,而不是C++只支持virtual function动态绑定。

Java语言是分布式的,常见的就是网络编程的领域,网络编程的接口java.net,提供URL, URLConnection, Socket, serverSocket等等,同时Java 的RMI机制也是开发分布式程序的重要手段。(做过一个简单的RMI协议的下游戏,主页寻找代码吧!)

Java编译器是使用java实现的,运行环境是使用ANSI C 实现的,java运行速度随着JIT编译技术的发展,越来越接近C++。同时Java是多线程的编程语言,而且线程之间支持同步机制,使用关键字synchronized实现。

Java的地位:

服务器开发领域:Java 已经是服务器编程的霸主,开发后台数据接口等等

移动设备:Android是完全基于Java编程的,而且基于J2EE的手机平台也是很多

桌面应用:与C++,.Net三分天下。

其实我自己掌握的领域只有第一个,也就是在服务器端的编程,提供高性能的服务,同时有很多的框架技术,根据请求类型分发到不同的模块,后处理请求,访问数据库,返回指定的数据。

这里还有很多的Java框架技术,先在这里水一下:

数据库框架技术:常见的就是Hibernate(我没有学过,不过我宿舍的10大神学过,应该不难),MyBatis框架(这个就是我学的,而且应用在实际的上线项目中)

缓存框架:Spring可以做缓存非常强大,同时为了更加直观,还有一种是EnCache框架,做缓存特别好,也很容易理解。

服务器框架:其实也就是服务器开发,一般会选择Tomcat解释环境,但是因为配置Webroot目录总是出错,索性就不使用这个了,改换成了Jetty,从底层去了解服务器的响应,同时这个Server框架可以同时监听多个端口。

SpringMVC:编写网站,还有分层实现必不可少,同时他的IoC、AOP思想也很厉害也正是Spring的两个核心(目前我只会Ioc,也就是依赖注入,也可以叫反转控制,目的是降低系统内部的耦合度,面试的时候千万别说自己掌握Spring,因为里面有太多的东西,小心自己挖坑哟)。

此外还有大量的框架技术,但是建议不要为了学习框架去学习框架,因为框架是在是太多了,所以关键是自己的快速学习的能力,解决问题的能力。

 

追梦的飞飞

于广州中山大学 20131003

Java复习1.基本知识的更多相关文章

  1. Java复习8.多线程

    Java复习8 多线程知识 20131007 前言: 在Java中本身就是支持多线程程序的,而不是像C++那样,对于多线程的程序,需要调用操作系统的API 接口去实现多线程的程序,而Java是支持多线 ...

  2. Java复习5.面向对象

    Java 复习5面向对象知识 20131004 前言: 前几天整理了C++中的面向对象的知识,学习Java语言,当然最重要的就是面向对象的知识,因为可以说Java是最正宗的面向对象语言,相比C++,更 ...

  3. java复习(1)---java与C++区别

    [系列说明]java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来.或者教给想快速学习java的童鞋如何应用 ...

  4. JAVA复习笔记分布式篇:zookeeper

        前言:终于到分布式篇,前面把JAVA的一些核心知识复习了一遍,也是一个JAVA程序员最基本要掌握的知识点,接下来分布式的知识点算是互联网行业的JAVA程序员必备的技能:     概念:ZooK ...

  5. C++复习15.指针知识

      C++复习15.指针知识 4.指针知识      在Tencent 笔试和面试中都考到了 C/C++中的指针知识,因为自己很不喜欢使用指针,所以才开始学习 Java的,但是现在看来还是躲不掉的,所 ...

  6. Java复习9网路编程

    Java 复习9网路编程 20131008 前言: Java语言在网络通信上面的开发要远远领先于其他编程语言,这是Java开发中最重要的应用,可以基于协议的编程,如Socket,URLConnecti ...

  7. Java复习10.Servlet编程

    Java复习10. Servlet编程知识 20131008 前言: 之前在大三下的时候,学习了一个月的JSP和Servlet知识,但是没有什么项目经验,把JSP Web开发学习实录看了前面几张,后面 ...

  8. Java复习7.输入输出流

    Java复习7.输入输出流 20131005 前言: Java中涉及数据的读写,都是基于流的,这一块的知识相当重要,而且在Java中的数据,char字符是16bit的,所以存在字节流和字符流的区别.如 ...

  9. Java 代码的基本知识(摘)

    (摘自:Java经典入门教程) http://wenku.baidu.com/link?url=IoWI58cD5vzeHN-NL4pN7Gren-RfzydrhjDlETAByC9L-9ANinyL ...

随机推荐

  1. Mysql中int和varchar类型

    int类型: int bigint smallint 和 tinyint 类型,如果创建新表时没有指定 int(M) 中的M时,默认分别是 : int           -------     in ...

  2. 关于Android RenderScript 的详细说明和一些实用文档

    http://www.cnblogs.com/TerryBlog/archive/2012/03/02/2377251.html RenderScript 是一种低级的高性能编程语言,用于3D渲染和处 ...

  3. window连接linux共享

    前提说明:windows主机信息:192.168.1.100 帐号:abc 密码:123 共享文件夹:sharelinux主机信息:192.168.1.200 帐号:def 密码:456 共享文件夹: ...

  4. 自制Linux映像和发行版Robomind

    通常ARM开发板厂商会提供已编译好的Linux映像供用户使用.我手上的MarS Board的厂商提供了Ubuntu映像,只是版本有点老,文件系统也比较大.之前我已经移植了较新的Linux内核,现在我想 ...

  5. Web安全学习笔记之Openvas配置,使用,报告

    OpenVAS(开放式漏洞评估系统)是一个客户端/服务器架构,它常用来评估目标主机上的漏洞.OpenVAS是Nessus项目的一个分支,它提供的产品是完全地免费.OpenVAS默认安装在标准的Kali ...

  6. C++中string的成员函数

    string类的构造函数: string(const char *s); //用c字符串s初始化 string(int n,char c); //用n个字符c初始化 此外,string类还支持默认构造 ...

  7. Zabbix 关联onealert实现电话报警

    Zabbix 关联onealert实现电话报警 系统环境:Linux Centos 7.4 应用版本:Zabbix 3.0.22 OneAlert官方地址:http://www.onealert.co ...

  8. DATETIME与TIMESTAMP

    DATETIME与TIMESTAMP都能表达一个完整的日期格式:YYYY-MM-DD HH:MM:SS[.fraction] eg: mysql> create table test(id in ...

  9. git操作方便,简单使用的客户端sourcetree 安装配置所遇问题总结

    常言道:工欲善其事,必先利其器. SourceTree是老牌的Git GUI管理工具了,也号称是最好用的Git GUI工具 这里先言言它的好: * 免费 * 功能强大:无论你是新手还是重度用户,Sou ...

  10. mybatis的sql映射文件—增删改查

    前提:需要的包log4j.jar,mybatis-3.4.1.jar,mysql-connector-java-5.1.37-bin.jar 1.基本类 员工类 package com.hand.my ...