JAVA面向对象程序设计(第二版) 袁绍欣 第四章答案

面向对象(上)

1.名词解释:构造方法、抽象

构造方法一般是用来初始化数据成员的,与类名相同,无返回值。

分为有参和无参数,当一个类中没有定义构造函数时,系统会给该类中加一个默认的空参数的构造函数,方便该类初始化。

构造函数可以重载。

2.对象位于内存何处?声明能引用对象的本质是什么?

对象位于堆内存中,实质是从栈空间中初始化一个引用,保存对象的地址。

3.对象和基本数据类型作为参数传递时,有什么不同?

对象传递的是它的地址,基本数据类型是值传递。

4.对象在什么时候成为垃圾对象并被释放?

对象没有任何引用时,才会成为垃圾,当系统资源不够时,垃圾会被释放。

5.final修饰符有什么用?

修饰类时表示不可被继承

修饰方法时表示方法不可被重写,对子类隐藏

修饰变量时表示变量不可被更改

7.static修饰的属性和方法有什么特点?

在堆中的公共储存单元,不属于任一个类

main函数是特殊的静态方法

8.Application程序执行时,为什么不能带后缀名?

当运行 java x.y 时

java会找 package x 下面 类 y 的 main函数运行

如果写成 java x.class

java 会找 package x 下面 类 class 的main 函数运行,显然是找不到的

10.输出下列图形

5 5 5 5 54 4 4 43 3 32 2 1
void display(n)
{if(n==1) return;for(int i=0;i<n;i++){System.out.print(n+" ");}System.out.print("\n");display(n-1);
}

11.马周游问题

 在一张国际象棋棋盘上(8*8方格),骑士(knight,马)位于任意一个位置。问如何才能让骑士不重不漏的经过棋盘上的每个格?共有多少种跳法?

package com.text;  //课后习题 4.11
import java.util.*;
public class Chess {public static int dx[] = {-2,-1,1,2,2,1,-1,-2};public static int dy[] = {1,2,2,1,-1,-2,-2,-1};public static int n = 5;public static int res = 0;//public static int step = 0;public static void dfs(int x,int y,boolean[][] tabu,int step){if(step == 24) {res++;System.out.println("ok");return;}tabu[x][y] = true;//step++;for(int i=0;i<8;i++){int xx = x+dx[i];int yy = y+dy[i];if(xx>=0&&xx<n&&yy>=0&&yy<n&&tabu[xx][yy]==false){//System.out.println(xx+","+yy);step++;dfs(xx,yy,tabu,step);step--;}}tabu[x][y] = false;}public static void main(String[] args) {boolean[][] tabu = new boolean[n][n];for(int i=0;i<n;i++){for(int j=0;j<n;j++){tabu[i][j] =false;}}dfs(0,0,tabu,0);System.out.println(res);}
}

这里我设置的棋盘是 5 * 5 的,答案304种,和网上给出的一样。
你问我为什么不 8 * 8 ?说多了都是泪。。。

8 * 8的我跑了好长好长时间,出不来结果,一直以为自己算法出错了,改来改去,一度崩溃。。。

实在受不了的我google了一下:

对于8 * 8棋盘,一共有26,534,728,821,064种封闭巡逻,但是到底有多少种开巡逻仍然未知 --摘自维基百科

(封闭巡逻就是跳回原位置,开巡逻就是最后可以跳到任意位置)

1566822-20190406130444931-2098454541.png

我算你个鬼,你个糟老头子坏得很~

转载于:https://www.cnblogs.com/lyc1226/p/10661458.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/264303.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

转:看问题的5个层次

转自&#xff1a;http://www.narrativecard.com/%E7%9C%8B%E9%97%AE%E9%A2%98%E7%9A%845%E4%B8%AA%E5%B1%82%E6%AC%A1/ 转自&#xff1a;《创业教我的50件事》 事件当然要处理&#xff0c;就像疼痛必须注意。但若整天只忙于事件&#xff0c;就像疼了一个月还在猛吞止痛药&#…

鸿蒙系统公测版发布,鸿蒙OS2.0系统公测版什么时候发布-适配机型

鸿蒙OS2.0手机开发者Beta版本于今日已正式发布&#xff0c;那么鸿蒙OS2.0系统的公测版本上市时间&#xff0c;适配手机名单有哪些&#xff0c;接下来小编就为大家带来了解答&#xff0c;一起看看吧&#xff01;一、公测版发布时间12月16日&#xff0c;发布了鸿蒙OS2.0手机开发者…

jQuery实现分页

参考网上的资源(必优博客 http://www.biuuu.com/) 注意&#xff1a;CSS样式使分页导航水平显示&#xff0c;如果没有的话将以普通列表方式呈现。 <html><head><script type"text/javascript" src"Library/jquery1.3.1/dist/jquery.js">&…

对acm icpc 的随笔——01

1&#xff0c;提高编程能力2&#xff0c;学习算法&#xff08;读书&#xff0c;读论文&#xff0c;包括一些题目的验证&#xff09;3&#xff0c;准备好面临的挑战&#xff08;熟悉体型&#xff0c;调整心态&#xff09;4&#xff0c;启发思维 <时刻保持镇定&#xff0c;用心…

oracle常用的工具软件

PL/SQL DevelopertoadOBJECT BROWSEREmbarcadero Rapidsql转载于:https://blog.51cto.com/lsg123/1561234

angular 加入原生html,Angular HTML绑定

收到一只叮咚Angular 2.0.0和Angular 4.0.0 final仅为了安全的内容constructor(private sanitizer:DomSanitizer){}transform(style) {return this.sanitizer.bypassSecurityTrustHtml(style);//return this.sanitizer.bypassSecurityTrustStyle(style);// return this.sanitiz…

foriegn web site

http://www.codeproject.com www.ddj.com http://www.guru.com/ 转载于:https://www.cnblogs.com/liulf/archive/2009/06/11/1501670.html

Unity游戏开发之C#快速入门

C#是微软团队在开发.NET框架时开发的&#xff0c;它的构想接近于C、C&#xff0c;也和JAVA十分相似&#xff0c;有许多强大的编程功能。 个人感受是C#吸收了众多编程语言的优点&#xff0c;从中可以看到C、C、Java、Javascript、python的影子&#xff0c;设计思想都是相通的(过…

通过PowerShell获取Windows系统密码Hash

当你拿到了系统控制权之后如何才能更长的时间内控制已经拿到这台机器呢&#xff1f;作为白帽子&#xff0c;已经在对手防线上撕开一个口子&#xff0c;如果你需要进一步扩大战果&#xff0c;你首先需要做的就是潜伏下来&#xff0c;收集更多的信息便于你判断&#xff0c;便于有…

ant引入html页面,antdesign 中 使用 iconfont symbol方式引入图标不展示

最近在写项目遇到了一个问题&#xff0c;我使用vue框架搭建了一个项目。我创建了一个 index.js文件&#xff0c;内容为&#xff1a;import { Icon } from ant-design-vue;const IconFont Icon.createFromIconfontCN({scriptUrl: //at.alicdn.com/t/font_2296540_wpxzi5ar76.js…

java filter

一、Filter简介 Filter也称之为过滤器&#xff0c;它是Servlet技术中最激动人心的技术&#xff0c;WEB开发人员通过Filter技术&#xff0c;对web服务器管理的所有web资源&#xff1a;例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截&#xff0c;从而实现一些特殊的功…

visualstudio调试html,Visual Studio Code中调试JavaScript

一、安装Debugger for Chrome扩展插件二、配置运行环境最左侧菜单找到调试(一个虫子样图标)&#xff0c;点击下图中红色标注或者直接按F5&#xff1a;然后出现下图所示&#xff1a;选择Chrome&#xff0c;会生成Launch.json文件&#xff1a;{// 使用 IntelliSense 了解相关属性…

动态网页技术(二)

SSH整合的基本步骤1、 Spring向下整合Hibernate&#xff08;DAO层&#xff09;1.1使用Spring的IoC容器创建sessionFactory1.2使用Spring的IoC容器创建DAO2、 Spring中间管理业务层2.1使用Spring的IoC容器创建Biz Bean2.2使用Spring的AOP配置业务层事务3、 Spring向上整合Str…

IT人的真实写照

IT人的真实写照Ping MM&#xff1a;Request timed out&#xff1b; & C" i; j0 p }3 d4 I# {5 Y8 ZPing money&#xff1a;Destination unreachable&#xff1b; ! U6 W6 y& U4 N8 X7 X0 A& \- N2 zPing Love&#xff1a;Unkown host name&#xff1b; N E!…

Android之PhotoView使用(原创)

文章大纲 一、什么是PhotoView二、代码实战三、项目源码下载 一、什么是PhotoView 一款 ImageView 展示框架&#xff0c;支持缩放&#xff0c;响应手势&#xff0c;位于图片排行榜的第五位&#xff0c;PhotoView 与上面不同的是图片的展示功能&#xff0c;可以实现类似微信头像…

浏览器打不开html链接,win7系统ie浏览器打不开网站链接怎么办

‍‍有些使用ie浏览器的win7旗舰版用户来&#xff0c;最近发现网站中的链接打不开&#xff0c;严重影响上网体验&#xff0c;遇到这种情况我们该怎么办呢&#xff1f;会出现网站链接无法打开很有可能是ie浏览器出了问题&#xff0c;我们可以通过修复IE组件来解决&#xff0c;下…

IsNull 和 SQL语句中CASE WHEN用法

【转】IsNull 和 SQL语句中CASE WHEN用法收藏 【转】IsNull 和 SQL语句中CASE WHEN用法 1、ISNULL 使用指定的替换值替换 NULL。 语法 ISNULL ( check_expression , replacement_value ) 参数 check_expression 将被检查是…

好玩的代码(1)

看效果&#xff08;gif工具不太会用&#xff0c;效果不是很好&#xff09; 代码很简单&#xff0c;就是对sleep函数和/b的使用。 代码 1 #include <cstdio>2 #include <windows.h>3 using namespace std;4 5 int main(int argc, char **argv)6 {7 printf("…

Python基础实践-密码管理系统实例

密码管理系统实例 需求分析&#xff1a; 1.主界面&#xff08;选项&#xff1a;密码生成&#xff0c;密码查询&#xff0c;密码修改&#xff0c;密码删除&#xff09;2.密码生成&#xff1a;用户输入密码的描述&#xff0c;输入密码的长度&#xff0c;使用随机数生成一个比较复…

设计模式?!

如何解决复杂性 分解 人们面对复杂性有一个常见的做法&#xff1a;即分而治之&#xff0c;将大问题分解为多个小问题&#xff0c;将复杂问题分解为多个简单问题。 抽象 更高层次来讲&#xff0c;人们处理复杂性有一个通用的技术&#xff0c;即抽象。由于不能掌握全部的复杂对象…