Its a good idea, but it is a risky idea.
As said above, when your freelancing, your basically representing your business, most clients wont care to much about your personal life, they just want the work done. You will have the most to lose, as you could lose reputation, money and most importantly time, if you fail to deliver. Plus you get the added stress of work + study. The moment money is involved things get hairy, as something is on the line that isn’t yours so you either find someone willing to risk their money with you, or you find a situation where your the one handling all the risk, and that brings me too…
Do something free for someone
If you lack ideas, and have time to go out and build something, then build something for someone for free. This will give you a lot of opportunities in a “real world” setting, but without forcing another party to deal with risk, as if you don’t deliver, or what you deliver doesn’t work for them, then no worries. There are plenty of people who wouldn’t mind getting something for free, as long as you can deliver it, and there is reasonable expectations, odds are you probably can find something to do for someone. If your getting a degree somewhere, ask around the campus to see if there’s any work available todo, or heck do some research (it looks better on a resume) if you like what you’d learn.
Obviously you won’t get paid for this, but if your goal is to learn, earn credibility, do what you like, and you lack ideas yourself then working for free is an excellent place to start. Consider it the same thing as doing open source. (heck you can make it open source too!)
So yes you can go seek out work and do work, and deal with all that comes with doing a job. Or you can find what is essentially volunteer work and get all the benefits (except money) without most of the stress and risk.
PS. I spent a winter break between semesters building a desktop application for where I worked to automate some basic tasks that were being done in a spreadsheet. It looked great, and worked fine, but was spaghetti code. But it looked great in interviews, gave me tremendous experience and helped make my works day-life easier, as we no longer used and managed spreadsheets.
Also graduating with a degree and a real life example of relevant work experience is killer on a resume, so regardless of if you get paid or not, try to do something that relates to what you want to work and gain a huge advantage over most grads.