本文目录一览:
- 1、04747java语言程序设计(一)怎么学习考过?
- 2、java语言程序设计4.17
- 3、java语言程序设计课后答案 郞波 第二版 清华大学出版社
- 4、济南java培训一般多少钱?
- 5、Java程序设计
- 6、《实战Java高并发程序设计》epub下载在线阅读,求百度网盘云资源
04747java语言程序设计(一)怎么学习考过?
要先了解题型
题型分为单选题、填空题、简答题50分,程序填空题、程序分析题、程序设计题50分,
前面的50分主要是死记硬背,能领悟那更好,再加上简单应用,可以去找一些app了解这一方面,平时就认真看看课本啦,刷刷真题、练习题,背背简答题,应该大差不差的能拿到30以上,在这方面努努力,毕竟要靠这得分;
后面的50分,都是综合应用,拿分很困难,因为要有很多的代码实践,属于日常功夫,要得懂读代码、写代码、调试代码。必须得上机训练,搞清楚书上的示例代码,再搞清楚往年试卷的程序大题,基本上拿个20分以上,大概要做对3,4道题。不过也要努力,毕竟这一行没点真工夫是真不行。
这些可以找一些视频,找一些讲解,在某bi站上有很多大佬讲解,可以去找找。希望对您能有帮助。
java语言程序设计4.17
package com.test;
import java.util.Scanner;
public class Jizita {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
for(int i=0;in;i++)
{
for(int j=i;j(n-1);j++)
{
System.out.print(" ");
}
for(int j=1;j=i+1;j++)
{
System.out.print(j);
System.out.print(" ");
}
for(int j=i;j0;j--)
{
System.out.print(j);
System.out.print(" ");
}
System.out.println();
}
}
}
java语言程序设计课后答案 郞波 第二版 清华大学出版社
我有
Java面向对象程序设计
清华大学出版社
(编著 耿祥义 张跃平)
习题解答
建议使用文档结构图
(选择Word菜单→视图→文档结构图)
习题1
1.James Gosling
2.
(1)使用一个文本编辑器编写源文件。
(2)使用Java编译器(javac.exe)编译Java源程序,得到字节码文件。
(3)使用Java解释器(java.exe)运行Java程序
3.Java的源文件是由若干个书写形式互相独立的类组成的。
应用程序中可以没有public类,若有的话至多可以有一个public类。
4.系统环境path D\jdk\bin;
系统环境classpath D\jdk\jre\lib\rt.jar;.;
5. B
6. Java源文件的扩展名是.java。Java字节码的扩展名是.class。
7. D
8.(1)Speak.java
(2)生成两个字节码文件,这些字节码文件的名字Speak.class 和 Xiti8.class
(3)java Xiti8
(4)执行java Speak的错误提示
Exception in thread "main" java.lang.NoSuchMethodError: main
执行java xiti8得到的错误提示
Exception in thread "main" java.lang.NoClassDefFoundError: xiti8 (wrong name: Xiti8)
执行java Xiti8.class得到的错误提示
Exception in thread "main" java.lang.NoClassDefFoundError: Xiti8/class
执行java Xiti8得到的输出结果
I'm glad to meet you
9.属于操作题,解答略。
习题2
1. D
2.【代码1】 【代码2】 错误 //【代码3】更正为 float z=6.89F;
3.float型常量后面必须要有后缀“f”或“F”。
对于double常量,后面可以有后缀“d”或“D”,但允许省略该后缀。
4.public class Xiti4{
public static void main (String args[ ]){
char ch1='你',ch2='我',ch3='他';
System.out.println("\""+ch1+"\"的位置:"+(int)ch1);
System.out.println("\""+ch2+"\"的位置:"+(int)ch2);
System.out.println("\""+ch3+"\"的位置:"+(int)ch3);
}
}
5.数组名字.length
6.数组名字.length
7. 【代码1】A,65
【代码2】-127
【代码3】 123456.783,123456.78312
8.
【代码1】false
【代码2】true
【代码3】false
【代码4】3
【代码5】4.4
【代码6】8.8
习题3
输出110
if-else语句书写的不够规范,复合语句缺少大括号“{}”,代码不够清晰。
2.你好好酷!!
3.
public class Xiti3_3
{
public static void main (String args[ ]){
int startPosition=0,endPosition=0;
char cStart='а',cEnd='я';
startPosition=(int)cStart; //cStart做int型转换据运算,并将结果赋值给startPosition
endPosition=(int)cEnd ; //cEnd做int型转换运算,并将结果赋值给endPosition
System.out.println("俄文字母表:");
for(int i=startPosition;i=endPosition;i++){
char c='\0';
c=(char)i; //i做char型转换运算,并将结果赋值给c
System.out.print(" "+c);
if((i-startPosition+1)%10==0)
System.out.println("");
}
}
}
4.
public class Xiti4
{ public static void main(String args[])
{ double sum=0,a=1;
int i=1;
while(i=20)
{ sum=sum+a;
i++;
a=a*i;
}
System.out.println("sum="+sum);
}
}
5.
class Xiti5
{ public static void main(String args[])
{ int i,j;
for(j=2;j=100;j++)
{ for(i=2;i=j/2;i++)
{ if(j%i==0)
break;
}
if(ij/2)
{ System.out.print(" "+j);
}
}
}
}
6.
class Xiti6
{ public static void main(String args[])
{ double sum=0,a=1,i=1;
while(i=20)
{ sum=sum+a;
i++;
a=(1.0/i)*a;
}
System.out.println("使用while循环计算的sum="+sum);
for(sum=0,i=1,a=1;i=20;i++)
{ a=a*(1.0/i);
sum=sum+a;
}
System.out.println("使用for循环计算的sum="+sum);
}
}
7.
public class Xiti7
{ public static void main(String args[])
{ int sum=0,i,j;
for(i=1;i=1000;i++)
{ for(j=1,sum=0;ji;j++)
{ if(i%j==0)
sum=sum+j;
}
if(sum==i)
System.out.println("完数:"+i);
}
}
}
8.方法之一
import java.util.Scanner;
public class Xiti8
{ public static void main (String args[ ]){
System.out.println("请输入两个非零正整数,每输入一个数回车确认");
Scanner reader=new Scanner(System.in);
int m=0,n=0,temp=0,gy=0,gb=0,a,b;
a=m = reader.nextInt();
b=n = reader.nextInt();
if(mn)
{ temp=m;
m=n;
n=temp;
}
int r=m%n;
while(r!=0)
{ n=m;
m=r;
r=m%n;
}
gy=n;
gb=a*b/gy;
System.out.println("最大公约数 :"+gy);
System.out.println("最小公倍数 :"+gb);
}
}
8.方法之二
import java.util.Scanner;
public class Xiti8 {
public static void main (String args[ ]){
System.out.println("请输入两个非零正整数,每输入一个数回车确认");
Scanner reader=new Scanner(System.in);
int m=0,n=0,t=0,gy=0,gb=0;
m = reader.nextInt();
n = reader.nextInt();
if(mn){
t=m;
m=n;
n=t;
}
for(int i=1;i=m;i++){
if(m%i==0 n%i==0){
gy=i;
}
}
gb=m*n/gy;
System.out.println(m+","+n+"的最大公约数为 "+gy);
System.out.println(m+","+n+"的最小公倍数为 "+gb);
}
}
9.
public class Xiti9
{ public static void main(String args[])
{ int n=1;
long sum=0,t=1;
t=n*t;
while(true)
{ sum=sum+t;
if(sum9999)
break;
n++;
t=n*t;
}
System.out.println("满足条件的最大整数:"+(n-1));
}
}// 1至7的阶乘和是sum=5913.0 // 1至8的阶乘和是sum=46233.0
习题4
1.用该类创建对象时。
2.所谓方法重载是在一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同,或者是参数的类型不同。构造方法可以重载。
3. 可以。不可以。
4.不可以。
5.成员变量又分为实例变量和类变量,用static修饰的变量是类变量。那么类变量和实例变量有什么区别呢?一个类通过使用new运算符可以创建多个不同的对象,不同的对象的实例变量将被分配不同的内存空间;如果类中的成员变量有类变量,那么所有对象的这个类变量都分配给相同的一处内存,改变其中一个对象的这个类变量会影响其它对象的这个类变量。也就是说对象共享类变量。
6.C,D
7.【代码1】,【代码4】
8.sum=-100
9.27
10. **20
##100
习题5
1. 如果子类和父类在同一个包中,那么子类自然地继承了其父类中不是private的成员变量作为自己的成员变量,并且也自然地继承了父类中不是private的方法作为自己的方法。继承的成员或方法的访问权限保持不变。如果子类和父类不在同一个包中,那么子类继承了父类的protected、public成员变量做为子类的成员变量,并且继承了父类的protected、public方法为子类的方法,继承的成员或方法的访问权限保持不变。如果子类和父类不在同一个包里,子类不能继承父类的友好变量和友好方法。
只要子类中声明的成员变量和父类中的成员变量同名时,子类就隐藏了继承的成员变量。
子类中定义一个方法,这个方法的类型和父类的方法的类型一致或者是父类的方法的类型的子类型,并且这个方法的名字、参数个数、参数的类型和父类的方法完全相同,子类如此定义的方法称作子类重写的方法。子类通过方法的重写可以隐藏继承的方法。
2.不可以。
3.abstract类。
4.假设B类是A类子类或间接子类,当我们用子类B创建一个对象,并把这个对象的引用放到A类的对象中时,称这个A类对象是子类对象的上转型对象。
5.可以把实现某一接口的类创建的对象的引用赋给该接口声明的接口变量中。那么该接口变量就可以调用被类实现的接口中的方法。
6.A,C,D
7.15.0
8.0
8.98.0
12
9.
class A
{ public final void f()
{ char cStart='a',cEnd='z';
for(char c=cStart;c=cEnd;c++)
{ System.out.print(" "+c);
}
}
}
class B extends A
{ public void g()
{ char cStart='α',cEnd='ω';
for(char c=cStart;c=cEnd;c++)
{ System.out.print(" "+c);
}
}
}
public class Xiti9
{ public static void main (String args[ ])
{ B b=new B();
b.f();
b.g();
}
}
10.
class A
{ public int f(int a,int b){
if(ba)
{ int temp=0;
temp=a;
a=b;
b=temp;
}
int r=b%a;
while(r!=0)
{ b=a;
a=r;
r=b%a;
}
return a;
}
}
class B extends A
{ public int f(int a,int b)
{ int division=super.f(a,b);
return (a*b)/division;
}
}
public class Xiti10
{ public static void main (String args[ ])
{ A a=new A();
B b=new B();
System.out.println("最大公约数 :"+a.f(36,24));
System.out.println("最小公倍数 :"+b.f(36,24));
}
}
习题6
1.仍然有效。
2.可以。
3.不可以。
4.大家好,祝工作顺利!
5. 96
乘数超过99
习题7
1.
(1)Strategy是接口。
(2)Army不是抽象类。
(3)Army和Strategy是关联关系。
(4)StrategyA, StrategyB、StrategyC与Strategy是实现关系。
2.
3.
4.例子13的设计符合开-闭原则。
5.例子17的设计符合开-闭原则。
习题8
采用新增的策略为选手计算得分。
增加新的具体策略StrategyFour。StrategyFour类将double computeScore(double [] a)方法实现为去掉数组a的元素中的一个最大值和一个最小值,然后计算剩余元素的几何平均值。
import java.util.Arrays;
public class StrategyFour implements ComputableStrategy {
public double computeScore(double [] a) {
if(a.length=2)
return 0;
double score=0,multi=1;
Arrays.sort(a);
int n=a.length-2;
for(int i=1;ia.length-1;i++) {
multi=multi*a[i];
}
score=Math.pow(multi,1.0/n);
return score;
}
}
2.
(1)策略(Strategy)PrintCharacter.java
public interface PrintCharacter{
public abstract void printTable(char [] a,char[] b);
}
(2) 具体策略
PrintStrategyOne.java
public class PrintStrategyOne implements PrintCharacter {
public void printTable(char [] a,char[] b) {
for(int i=0;ia.length;i++) {
System.out.print(a[i]+",");
}
for(int i=0;ib.length;i++) {
System.out.print(b[i]+",");
}
System.out.println("");
}
}
PrintStrategyTwo.java
public class PrintStrategyTwo implements PrintCharacter {
public void printTable(char [] a,char[] b) {
for(int i=0;ia.length;i++) {
System.out.print(b[i]+","+a[i]+",");
}
}
}
(3)上下文 PrintGame.java
public class PrintGame {
PrintCharacter strategy;
public void setStrategy(PrintCharacter strategy) {
this.strategy=strategy;
}
public void getPersonScore(char[] a,char[] b){
if(strategy==null)
System.out.println("sorry!");
else
strategy.printTable(a,b);
}
}
应用以上策略:
public class Application {
public static void main(String args[]) {
char [] a=new char[26];
char [] b=new char[26];
for(int i=0;i=25;i++){
a[i]=(char)('a'+i);
}
for(int i=0;i=25;i++){
b[i]=(char)('A'+i);
}
PrintGame game=new PrintGame(); //上下文对象
game.setStrategy(new PrintStrategyOne()); //上下文对象使用策略一
System.out.println("方案1:");
game.getPersonScore(a,b);
game.setStrategy(new PrintStrategyTwo()); //上下文对象使用策略二
System.out.println("方案2:");
game.getPersonScore(a,b);
}
}
3.参照本章8.3.3自主完成。
习题9
1.A,B,D
2. Love:Game
3.13
abc夏日
4.13579
5.9javaHello
6.
public class Xiti6 {
public static void main (String args[ ]) {
String s1,s2,s3,t1="ABCDabcd";
System.out.println("字符串原来是这个样子: "+t1);
s1=t1.toUpperCase();
System.out.println("字符串中的小写字母变成大写是这个样子: "+s1);
s2=t1.toLowerCase();
System.out.println("字符串中的大写字母变成小写是这个样子: "+s2);
s3=s1.concat(s2);
System.out.println("大写字符串连接小写字符串是这个样子: "+s3);
}
}
7.
class Xiti7
{ public static void main(String args[ ])
{ String s ="中华人民共和国";
char a=s.charAt(0);
char b=s.charAt(6);
System.out.println("第一个字符: "+a);
System.out.println("最后一个字符: "+b);
}
}
8.
import java.util.*;
class Xiti8
{ public static void main(String args[]){
int year,month;
System.out.println("请输入年份和月份,每输入一个数回车确认");
Scanner reader=new Scanner(System.in);
year= reader.nextInt();
month= reader.nextInt();
String [] day=new String[42];
System.out.println(" 日 一 二 三 四 五 六");
Calendar rili=Calendar.getInstance();
rili.set(year,month-1,1);//将日历翻到year年month月1日,注意0表示一月...11表示十二月
int 星期几=rili.get(Calendar.DAY_OF_WEEK)-1;
int dayAmount=0;
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
dayAmount=31;
if(month==4||month==6||month==9||month==11)
dayAmount=30;
if(month==2)
if(((year%4==0)(year%100!=0))||(year%400==0))
dayAmount=29;
else
dayAmount=28;
for(int i=0;i星期几;i++)
day[i]="";
for(int i=星期几,n=1;i星期几+dayAmount;i++){
if(n=9)
day[i]=String.valueOf(n)+" " ;
else
day[i]=String.valueOf(n);
n++;
}
for(int i=星期几+dayAmount;i42;i++)
day[i]="";
for(int i=0;i星期几;i++)
{ day[i]="**";
}
for(int i=0;iday.length;i++)
{ if(i%7==0)
{ System.out.println("");
}
System.out.print(" "+day[i]);
}
}
}
9.
import java.util.*;
class Xiti9
{ public static void main(String args[]){
int year1,month1,day1,year2,month2,day2;
Scanner reader=new Scanner(System.in);
System.out.println("请输入第一个日期的年份 月份 日期 ,每输入一个数回车确认");
year1= reader.nextInt();
month1= reader.nextInt();
day1= reader.nextInt();
System.out.println("请输入第二个日期的年份 月份 日期 ,每输入一个数回车确认");
year2= reader.nextInt();
month2= reader.nextInt();
day2= reader.nextInt();
Calendar calendar=Calendar.getInstance();
calendar.set(year1,month1,day1);
long timeYear1=calendar.getTimeInMillis();
calendar.set(year2,month2,day2);
long timeYear2=calendar.getTimeInMillis();
long 相隔天数=Math.abs((timeYear1-timeYear2)/(1000*60*60*24));
System.out.println(""+year1+"年"+month1+"月"+day1+"日和"+
year2+"年"+month2+"月"+day2+"日相隔"+相隔天数+"天");
}
}
全部都给你
希望那个可以帮助到你 祝你学习成功
济南java培训一般多少钱?
济南Java培训班费用一般在15000元-20000元左右,具体根据地区和选择机构而定。想要学习java,推荐选择【达内教育】。
Java是一个纯粹的面向对象的程序设计语言,继承了C++语言面向对象技技术的核心。舍弃了C语言中容易引起错误的指针、运算符重载、多重继承等特性,增加了垃圾回收器功能用于回收不再被引用的对象所上据的内存空间,使得程序员不用再头内存管理而扣忧。【Java学习】内容可以系统把握面向付象编程语言JAVA的核心语法,能够理解J2SE,J2EE体系架构的理论思想和架构内容,把握JAVA程序设计的主要模式和核心思想,熟练把握基于JAVA语言的编程技巧和编程工具,能够独立完成基于JAVA的客户端和服务器端应用程序的开发、调试、部署和执行。Java编程语言的风格十分接近C语言、C++语言。
想了解更多有关Java的相关信息,推荐咨询【达内教育】。作为国内IT培训的领导品牌,达内的每一名员工都以“帮助每一个学员成就梦想”为己任,也正因为达内人的执着与努力,达内已成功为社会输送了众多合格人才,为广大学子提供更多IT行业高薪机会,同时也为中国IT行业的发展做出了巨大的贡献。达内IT培训机构,试听名额限时抢购。
Java程序设计
可以到IT学习联盟下载。
…………………………
看你问的问题,应该是对java很感兴趣,其实你可以自学java。关于如何学习java,我刚才看到一篇很不错的文章,是一个农民工介绍自己如何自学java,并找到Java的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。
我是一名地地道道的农民工,生活在经济落后的农村,有一个哥哥和一个弟弟,父母都是地道的农民,日出而作,日落而息,我从小到大学习一直很好,从小学到高一都,成绩在全级一直名列前茅,这样我也顺利了考上省的重点高中,然而,每个学期开学是家里最为难的时候,每次交学费都让父母发愁许久,家里为了给我筹钱读书,都借了不少钱,才让我读上高中。我知道我读到高中家里已经欠了好多债,为了减轻家里的负担,我选择了退学。
2009年我高一退学,为了给家里还债,干过建筑工地的小工,搞过塑料制品加工,送水工等等。很工资都很低,一个月也就1000多,加上加班费一个月能拿2000多一点,我每个月都向家里寄回800-1000元,到了2011年末,一次偶然的机会我接触了Java,听说Java的前景挺不错,工资相对于我一个农民工来说简直是天文数字,于是我在新华书店买了几本Java的书,尽管白天辛苦工作,晚上回来还是坚持看书,但有于基础太差很多都很不明白,但还是坚持看,一有看1-2个小时Java的书,看着看着许多基础都慢慢的学会了,但那些比较难的还是看不懂,后来还买了有些关于框架的书,还是看不懂,这样断断续续的持续了半年多,觉得自己Java的基础都差不多懂了,但框架还是看不懂,还有最缺的项目经验,看了很多招聘Java程序员的简介都要项目经验,相对我一个农民工来连框架都弄不明白,想找一份Java工作对我来说简直是奢侈。我只想学Java,并不敢想以后能从事Java的工作。
有一次,在百度上看到一篇让我很鼓舞的文章,是一个Java高手介绍在没有基础的朋友怎么自学入门Java,文章写的很好,包含了如何学习,该怎么学习,他提到一个方法就是看视频,因为看书实在太枯燥和费解的,不少是我们也看不懂,这点我真的很认同,我自己看书都看了很久才学会基础。曾经有想过参加培训,但是上万元的培训费让我望而却步,我工资这么低,每个月还有向家里汇钱,加上城市消费比较高,虽然每个月只有几百剩下,但是相对于上万万学费和四个月的吃住费用逼我连想不敢想。 于是我决定看视频,我就去搜索Java的视频,虽然我零星的找到一些Java的视频,但是都不系统。最重要连项目都没有。后来我找到一份很好的视频,是IT学习联盟这个网站一套视频叫零基础Java就业班(喜欢《零基础Java就业班》的可以复制 t.cn/8sx5z6L 粘贴浏览器地址栏按回车键即打开)的教程还不错,很完整。还赠送11个顶级企业项目。价格很合理,于是我买下来。
于是开始了我的自学Java的路,收到光盘后,我就开始学习,刚开始学习还不错,是从零基础教起,老师幽默风趣而又轻松的课堂教课,使我发现原来学习JAVA并不是一件很难的事情。因为我本来基础还不错,前面的基础看一篇我就过去了,到了框架,我觉不又不是很难,可能老师太牛了,他能把复杂的问题讲的比较通俗易懂,有些难点的地方我还是连续看了五六次,把他弄懂。每天下午6点下班后,吃了饭,马上跑回家。看视频,买了几本笔记本。当时,为了编程还花几百元了台二手的台式电脑,配置一般,但编程是足够的。一边看视频,一边记笔记,把重点都记下来,还一边跟着老师敲代码,为了能尽早学会Java。每天都坚持学5-6个小时。经常学到晚上一点多才睡觉。星期六,日不用上班,每天7点多起床,学到晚上11,12点。那段时间特别辛苦,特别累。在学习Java的三个多月里,除了吃饭睡觉工作,剩余的时间都在学习,因为我知道自己的计算机基础不是很好,也没有学过什么计算机,只是学了些Java基础,相对于那些科班的人来说我要比他们付出更多的努力。我只能咬紧牙关,坚持下去,我不能放弃,我要完成我的梦想,我要让我的家人过上好日子。终于三个多月后我把Java教程里的内容和项目都学完了,在学项目的过程中我发现项目特别重要,他能把你学过的知识全部联系起来,能更好的理解你所学的知识。还有学习过程中,动手很重要,要经常跟着老师动手敲,动手吧,跟着做,一行一行的跟着敲,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。 如果遇到暂时对于一些思路不能理解的,动手写,先写代码,慢慢你就会懂了。这套视频还赠送了11个顶级企业项目,对于我没有任何经验的人来说,这个太重要了,还有在学习项目是提升能力最快的方法。项目能把所有的知识点全都连到一起了,不再是分散的,而是形成一个整体了。那种感觉是仅仅深入钻研知识点而不写真实项目的人所不能体会的。一个项目就是一根绳子可以把大片的知识串到一起。 就这样,我用了两个月也把项目给学完了。其实学完教程差不错就达到就业水平,但是我可能觉得自己学历低还是把那11个顶级企业项目才去找工作。
接着我就到51job疯狂的投简历,因为我的学历问题,初中毕业,说真的,大公司没有人会要我。所以我头的都是民营的小公司,我希望自己的努力有所回报。没有想过几天后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比价严格,需要有一年的项目经验,所以我没有被选中。 后来陆续面试了几加公司,终于功夫不负有心人,我终于面试上了一家民营的企业。公司规模比较小,我的职务是Java程序员。我想我比较幸运,经理看中我的努力,就决定吕勇我,开的工资是3500一个月,虽然我知道在北京3500只能过温饱的生化,但是我想我足够了,比起以前的工资好了些,以后可以多寄些钱回家。我想只要我继续努力。我工资一定会翻倍的。 把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有自卑,我们不比别人笨,只有我们肯努力,我们一样会成功。
…………………………………………
《实战Java高并发程序设计》epub下载在线阅读,求百度网盘云资源
《实战Java高并发程序设计》(葛一鸣)电子书网盘下载免费在线阅读
资源链接:
链接:
密码:kumx
书名:实战Java高并发程序设计
作者:葛一鸣
豆瓣评分:8.3
出版社:电子工业出版社
出版年份:2015-10-1
页数:339
内容简介:
在过去单核CPU时代,单任务在一个时间点只能执行单一程序,随着多核CPU的发展,并行程序开发就显得尤为重要。
《实战Java高并发程序设计》主要介绍基于Java的并行程序设计基础、思路、方法和实战。第一,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。第二,进一步详细介绍JDK中对并行程序的强大支持,帮助读者快速、稳健地进行并行程序开发。第三,详细讨论有关“锁”的优化和提高并行程序性能级别的方法和思路。第四,介绍并行的基本设计模式及Java 8对并行程序的支持和改进。第五,介绍高并发框架Akka的使用方法。最后,详细介绍并行程序的调试方法。
《实战Java高并发程序设计》内容丰富,实例典型,实用性强,适合有一定Java基础的技术开发人员阅读。
作者简介:
葛一鸣,51CTO特约讲师,国家认证系统分析师,获得OracleOCP认证。长期从事Java软件开发工作,对Java程序设计、JVM有深入的研究,对设计模式、人工智能、神经网络、数据挖掘等技术有浓厚兴趣,著有《自己动手写神经网路》电子书和《实战Java虚拟机》一书。
郭超,就职于杭州市道路运输管理局信息中心,主要从事大型交通管理系统的分布式管理和并发模型设计,对Java的研究比较深入,专注于分布式应用和并发应用。