gpt4 book ai didi

java - 找不到符号: symbol: class SimpleDate location: class SimpleDateClient

转载 作者:太空宇宙 更新时间:2023-11-04 13:26:47 25 4
gpt4 key购买 nike

我正在使用 Netbeans。这些文件由于某种原因无法运行。我正在尝试导入 Netbeans 选项卡中的其他文件,但它们不起作用。如何使该应用程序也作为 main 方法运行 SimpleDateClient.java

这是SimpleDateClient.java

/* A client program to display SimpleDate object values
Anderson, Franceschi
*/
package SimpleDateClient;

import java.awt.*;
import javax.swing.JFrame;


public class SimpleDateClient extends JFrame
{
private String action = "";

private int animationPause = 2; // 2 seconds between animations


private SimpleDate dateObj; // declare SimpleDate object reference

public void workWithDates( )
{
animate( "dateObj reference declared" );

/***** Add your code here *****/
/**** 1. Instantiate dateObj using an empty argument list */
dateObj = new SimpleDate();


animate( "Instantiated dateObj - empty argument list" );

/***** 2. Set the month to the month you were born */


//animate( "Set month to birth month" );


/***** 3. Set the day to the day of the month you were born */


//animate( "Set day to birth day" );


/***** 4. Set the year to the year you were born */


//animate( "Set year to birth year" );


/***** 5. Call the nextDay method */


//animate( "Set the date to the next day" );


/***** 6. Set the day to 32, an illegal value */


//animate( "Set day to 32" );


/***** 7. Set the month to 13, an illegal value */


//animate( "Set month to 13" );


/***** 8. Assign the value null to dateObj */


//animate( "Set object reference to null" );


/***** 9. Attempt to set the month to 1 */

}

public SimpleDateClient( )
{
super( "A SimpleDate Object" );

setSize( 300, 300 );
setVisible( true );
}

public void paint( Graphics g )
{
super.paint( g );

// display action
g.drawString( action, 50, 250 );

// object reference
int sX = 50, sY = 75;
int boxL = 75, boxH = 20;
g.drawRect( sX, sY, boxL, boxH );
g.drawString( "dateObj", sX, sY - 10 );

if ( dateObj != null )
draw( g );
else
g.drawString( "null", sX + 15, sY + 15 );
}

public void draw( Graphics g )
{
int sX = 50, sY = 75;
int boxL = 75, boxH = 20;

// arrow
g.drawLine( sX + boxL, sY + boxH / 2,
sX + boxL + 25, sY + boxH / 2 );
g.drawLine( sX + boxL + 25, sY + boxH / 2,
sX + boxL + 25, sY + boxH * 2 );
g.drawLine( sX + boxL + 25 - 5, sY + boxH * 2 - 5,
sX + boxL + 25, sY + boxH * 2 );
g.drawLine( sX + boxL + 25 + 5, sY + boxH * 2 - 5,
sX + boxL + 25, sY + boxH * 2 );


// month
g.drawString( "month", sX + boxL - 50, sY + 2 * boxH + 15 );
g.drawRect( sX + boxL, sY + 2 * boxH, boxL, boxH );
g.drawString( Integer.toString( dateObj.getMonth( ) ),
sX + boxL + 5, sY + 2 * boxH + 15 );

// day
g.drawString( "day", sX + boxL - 50, sY + 3 * boxH + 15 );
g.drawRect( sX + boxL, sY + 3 * boxH, boxL, boxH );
g.drawString( Integer.toString( dateObj.getDay( ) ),
sX + boxL + 5, sY + 3 * boxH + 15 );

// year
g.drawString( "year", sX + boxL - 50, sY + 4 * boxH + 15 );
g.drawRect( sX + boxL, sY + 4 * boxH, boxL, boxH );
g.drawString( Integer.toString( dateObj.getYear( ) ),
sX + boxL + 5, sY + 4 * boxH + 15 );
}

public void animate( String a )
{
action = a;
repaint( );
Pause.wait( (double) animationPause );
}

public static void main( String [] args )
{
SimpleDateClient app = new SimpleDateClient( );
app.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
app.workWithDates( );
}
}

这是SimpleDate.java

/* A simple date class
Anderson, Franceschi
*/
package SimpleDateClient;


public class SimpleDate
{
private int month;
private int day;
private int year;

/** default constructor
* sets month to 1, day to 1 and year to 2000
*/
public SimpleDate( )
{
setDate( 1, 1, 2000 );
}

/** overloaded constructor
* @param mm initial value for month
* @param dd initial value for day
* @param yyyy initial value for year
*
* passes parameters to set methods
*/
public SimpleDate( int mm, int dd, int yyyy )
{
setMonth( mm );
setYear( yyyy );
setDay( dd );
}

/* accessor methods */
int getMonth( ) { return month; }
int getDay( ) { return day; }
int getYear( ) { return year; }

/** mutator method */
/** setMonth
* @param mm new value for month
* if mm is between 1 and 12, sets month to mm
* otherwise, sets month to 1
*/
public void setMonth( int mm )
{
month = ( mm >= 1 && mm <= 12 ? mm : 1 );
}

/** setDay
* @param dd new value for day
* if dd is legal day for current month, sets day to dd
* otherwise, sets day to 1
*/
public void setDay( int dd )
{
day = ( dd >= 1 && isValidDay( dd ) ? dd : 1 );
}

/** setYear
* @param yyyy new value for year
* sets year to yyyy
*/
public void setYear( int yyyy )
{
year = yyyy;
}

/** sets date to the next day
*/
public void nextDay( )
{
if ( ! isValidDay( ++day ) )
{
day = 1;
if ( ++month > 12 )
{
month = 1;
year++;
}
}
}

private boolean isValidDay( int newDay )
{
int [] daysInMonth = { 0, 31, 28, 31,
30, 31, 30,
31, 31, 30,
31, 30, 31 };

if ( newDay > daysInMonth[month] )
{
if ( month == 2 && isLeapYear( ) && newDay == 29 )
return true;
else
return false;
}
else
return true;

}

private boolean isLeapYear( )
{
return !( year % 4 != 0
||( year % 100 == 0 && year % 400 != 0 ) );
}


/** setDate
* @param mm new value for month
* @param dd new value for day
* @param yyyy new value for year
* passes parameters to setMonth, setDay, and setYear
*/
public void setDate( int mm, int dd, int yyyy )
{
setYear( yyyy ); // set year first (could be leap year)
setMonth( mm ); // set month next
setDay( dd ); // set day
}

/** toString
* @return String
* returns date in mm/dd/yyyy format
*/
public String toString( )
{
return month + "/" + day + "/" + year;
}

/** equals
* @param d Object to compare to this object
* @return true if d is equal to this object
* false, otherwise
*/
public boolean equals( Object d )
{
if ( !( d instanceof SimpleDate ) )
return false;
SimpleDate d1 = (SimpleDate)d;
if ( month == d1.month
&& day == d1.day
&& year == d1.year )
return true;
else
return false;
}
}

这是Pause.java

/* Pause class to pause applications
Anderson, Franceschi
*/
package SimpleDateClient;

public class Pause
{
public static void wait( double seconds )
{
try
{
Thread.sleep( (int) ( seconds * 1000 ) );
}
catch ( InterruptedException e )
{
e.printStackTrace( );
}
}
}

For the SimpleDate class, it is giving me an error along with the Pause class

Pause

Files

最佳答案

转到文件|新项目

Project

类别中选择Java,从项目中选择Java应用程序,单击下一步>

New Project

为项目命名并确保设置初始包/类

Project Properties

您的项目现在应该已经开始了。

Project Navigator

现在可以选择是否将现有文件复制到项目中(在 Windows 下,您可以简单地从资源管理器复制文件并将其粘贴到项目中(在 src 节点下)),还是在项目中创建空类并简单地复制粘贴原始文件中的内容

关于java - 找不到符号: symbol: class SimpleDate location: class SimpleDateClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32575780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com