File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes Calendar Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Calendar" Watch "Calendar" New topic


Eric Sexton
Ranch Hand

Joined: Sep 12, 2003
Posts: 133
I have some code in which I want to create a current date for today. Then I want to subtract 3 months worth of time. So for the day Feb 11, 2003 I would want the date to be Nov 11, 2002. Here's my first attempt:

I took a quick look at the add method for Calendar and I thought that this would work for me. This code seems to work fine for me, but my compiler flags the second line as accessing a static field in a non static way. I understand WHAT and WHY the compiler is telling me this. However, alternatives are not working for me. How can I do this the correct way? Thanks in advance.
Joe Ess

Joined: Oct 29, 2001
Posts: 9189

You should be able to access a class' public static fields through an instance. What compiler are you using? It works with JDK 1.4.2_01 on Windows 2000.

[How To Ask Questions On JavaRanch]
Eric Sexton
Ranch Hand

Joined: Sep 12, 2003
Posts: 133
IBM WSAD 5.1. It is only a warning, not an error. In fact I can specify that I want those types of warning to be ignored. I guess I wanted validation that what I was doing is acceptable.
[ November 12, 2003: Message edited by: Eric Sexton ]
Wayne L Johnson
Ranch Hand

Joined: Sep 03, 2003
Posts: 399
It worked for me, too, but this might be better:

This accesses the static "MONTH" variable using the class, rather than an instance. But either way is syntactically correct.
I agree. Here's the link:
subject: Calendar
It's not a secret anymore!